Hi :
I downloaded the 1.03 version of the software. I have untarred and have
been reading thru the man pages, INTERNALS file and most of the FAQ.

I am trying to build an alternative back-end engine to that used
by qmail-send <-> qmail-lspawn <-> qmail-local

The requirement is that incoming messages via smtp or qmail inject
be handled initially by qmail- but forwarded onto another daemon (written
in Java). This daemon will process the message, check authorization
and do any other processing required. The eventual delivery of the message
would then be done using the JavaMail Apis. 

The current thinking is as follows: Please give your comments/input on it.

a.) Keep the qmail-send program intact and have it interact just as it
does with qmail-lspawn. 

b.) I am assuming that qmail-lspawn is created once only(from qmail-start.c) 
- and it interacts with qmail-send on one end. And takes the message and
execs qmail-local which handles the eventual dispatch.

c.) Modify qmail-lspawn so that it will initialize the Java VM - ONCE only.
and build a handle to the object which will communicate with the Java 
server.

Then instead of execing "qmail-local" each time- we would use the java VM
handle to dispatch the message to the java server. 

The advantage of this approach is that multiple execs are not done- so it
could be less expensive than "execing" a local process- especially if the
local process is initializing the Java Vm machinery each time. 

The disadvantage is that error handling- and server unavailable contingencies
will be handled in the same thread as that of qmail-lspawn (unless we
Multi-thread it).

I forgot to mention- I have looked at dot-qmail
man page and I completely understand that I could invoke a program
using it. This program could handle the connection with the Java Server.

The advantage of this is that I dont change qmail sources at all!
But the disadvantage seems to be that I would loose performance!

Please give your input. If others have developed plugins to qmail and
can send me some url's, gottcha's and warnings that would be great!

Thanks in advance.

-Arjun Khanna


Reply via email to