I have patch that convert aolserver into generic threaded server
platform. I had to write
SMTP proxy server and it required just a small patch to change default
HTTP-aware behaiviour
of server thread. Now it supports generic drivers and uses same thread
pools/connection driver as for http
communications.
It is possible to write generic C-module that will register Tcl
callbacks and call them at some points and
aolserver connection thread will handle the rest.

Tom Jackson wrote:
Brandy,
Thanks for the info. That is very good to know. One thing that is
'busted' in AOLserver is the ability to provide threaded generic
servers. I would like to build this in for various reasons, so it looks
like the socket/fileevent method might be the way to go, and just forget
about threads.

For those who don't know, ns_socklistencallback runs in a single thread,
no matter how many times you call it with different ip/port
combinations. If any client connection blocks, everyone else stacks up
waiting.

Last week I started working on a shared 'Network Variable' server. Not
wanting to write any more C level code, I had to use
ns_socklistencallback to receive an ip/port number to dial back to, and
start a new thread on the listen server to dial back the client, which
had setup a server using ns_socklisten. While this worked great, I ran
into another issue: when a connection thread finishes with a connection
it forgets about any open fds, so the connection is only available for
the first connection. :(   So it looks like another project will be to
setup a module which allows persistent tcp connections, probably similar
to nsdb, but working with arrays instead of ns_sets.

tom jackson

On Fri, 2004-05-28 at 09:00, Brady Wetherington wrote:

Note that tclhttpd uses "fileevent" to implement a full-fledged single-process 
select-based web
server - I don't know how good it actually is in practice, but it should make for a 
very high-
performance, low-overhead server.

On Thu, 27 May 2004 12:45:09 -0700, Tom Jackson <[EMAIL PROTECTED]> wrote:


Right, you use something like 'fileevent'.

I'm going to be playing around with this a little to see how it compares
to a server I just wrote using ns_socklistencallback.

-- AOLserver - http://www.aolserver.com/

To Remove yourself from this list, simply send an email to <[EMAIL PROTECTED]> with the
body of "SIGNOFF AOLSERVER" in the email message. You can leave the Subject: field of 
your email blank.




-- AOLserver - http://www.aolserver.com/

To Remove yourself from this list, simply send an email to <[EMAIL PROTECTED]> with the
body of "SIGNOFF AOLSERVER" in the email message. You can leave the Subject: field of 
your email blank.

-- Vlad Seryakov 703 488-2173 office [EMAIL PROTECTED] http://www.crystalballinc.com/vlad/


-- AOLserver - http://www.aolserver.com/

To Remove yourself from this list, simply send an email to <[EMAIL PROTECTED]> with the
body of "SIGNOFF AOLSERVER" in the email message. You can leave the Subject: field of 
your email blank.

Reply via email to