Am 02.01.2006 um 21:13 schrieb Stephen Deasey:


If the problem is that threads are too "heavy", then it's pointless to
use aio_write() etc. if the underlying implementation also uses
threads.  It will be worse than using conn threads alone, as there
will be extra context switches as control bounces from driver thread,
to IO thread, back to driver thread, and finally to conn thread.

Well, I really do not know which OS uses what implementation.
We now know thaat Linux uses userland threads.
I do not know about Darwin but I can peek into their sources.
Same for Solaris.


Here's another way to look at it:  We already dedicate a conn thread
for every download.  What's so special about uploads that we can't
also dedicate a thread to them? The threads are long lived, you can
prevent them from running Tcl etc...

This is true. What I had in mind was to make it simple as possible
by reusing already present driver thread w/o making it more complex
than needed by adding even more theads. We already have lots of
them anyways.


Sure, the ideal would be AIO for both uploads and downloads.  But the
io_* API is busted, at least on one major platform, possibly more.
Have you looked at Darwin, how do they implement it?  What are you
going to do on Windows?


I do not know. On windows most of the things  are already async
(WaitForMultipleObjects) so I believe that we can work-arround by
adding our own wrapper for AIO as we have done for mmap.

But this is all speculation. I never went farther than reading
man pages and contemplating about it. Vlad went considerably
farther and have tried couple of things.

I believe it is the time we have to make ourselves pretty clear
what are we about to do:

  o. add upload statistics and control?
  o. improve upload altogether
  o. redesign upload altogether

At the moment, most visible/needed improvement coud/would be
a sort of upload statistics, as we do miss this functionality.

Zoran


-------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc. Do you grep through log files
for problems?  Stop!  Download the new AJAX search engine that makes
searching your log files as easy as surfing the web. DOWNLOAD SPLUNK!
http://ads.osdn.com/?ad_idv37&alloc_id865&op=click
_______________________________________________
naviserver-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/naviserver-devel


Reply via email to