> > > Gerrit P. Haase wrote: >> Leif Jackson wrote: >> >>>> Hello, >>>> >>>> please consider using one single process with threads, for each client >>>> one thread, instead the slower 'fork a child for every client' or >>>> Apache like pre-fork technique. >> >> >> >>> Our current 2.1 cvs head has pre-fork and I am currently working on a >>> high >>> performance version with pthreads which is coming along well but still >>> is >>> a while out. >> >> >> Hey, this is great news, I just started using lighttpd which uses >> pthreads too and it is a lot faster than Apache therefore. So I thought >> there are chances that it will speed up dbmail too. > > Threads may speed up dbmail a little, but I don't think the forking model > currently is much of a bottleneck. Combined with a redesign of the imap > codebase > however, dbmail on pthreads will kick ass. >
Well going to bed now but I thought I would respond, the threading patch has been completed for the pop server and halfway through making the imap daemon thread safe... It is a major bunch of changes as well as I changed out the list.c for the GList stuff because we have glib in the requirments might as well start using it :) As for the threading code it makes about a 60% speedup on the pop3 server alone and I can't state much yet for the imap server but between the pthreads and the new list code I have finaly eradicated the last few minor memory leaks I used to see from the list_nodeadd stuff that bugged me! The diff so far is almost 400k so it is a major re-think of some areas...etc.. Anyway a little punchy 4:36am here, been coding almost non-stop all weekend just got a bug up my $#% if you know what I mean... Later, Leif