LDAP and Username/Passwords
isectd
should provide a mechanism that implements
username/password security for clients. Rather than
implement its own isectd
should be able configurable
to use already-existing LDAP-enabled directories. For sites
without directories but the desire to implement security
a template schema file should be provided.
Encryption
The layer should be created on top of the existing API that automatically encrypts/decrypts messages between clients, workers, and isectd. It's reasonable to expect this layer would be compatible with prevalent RFCs.
Redundancy
The weakest link in a fault-tolerant sense is isectd
.
If it crashes all the information currently in-transit between
clients and workers is lost. This is unlikely because
isectd
's job is fairly straight-forward but there's
no guarantee.
A couple of ways to improve this situation is to log the messages to disk, or a memory-mapped file so in the case of its inconvenient crash, some type of state could be recovered. It doesn't seem to make sense (at this point at least) to log every message to a file for performance reasons.
A more interesting approach would be for multiple isectd
s
to cooperate, allowing one to do all the work while informing
others of the sockets it's connected and the messages it's sent.
In the event of its death a mirror isectd
could properly
dispose or flag the offending message and continue where its
predecessor left off.
Clean-up
Currently, the workerid is the memory address of the worker structure which was valuable during debugging, but not so in production. I hate having to enter six, seven, or even eight-digit worker IDs in isectd. I'd prefer if worker IDs incremented in the same manner as client IDs
The "CONFIG SERVICE" command should be obsolete. Configuring workers with a new service name should automatically create the service. The only reason to keep the separate statements is if isdexecd were to restrict creating workers to existing services. Not a bad idea to reduce service name typos...
Go to the first, previous, next, last section, table of contents.