On Tue, Oct 23, 2012 at 9:19 PM, Avi Bahra <avibahra@googlemail.com> wrote:
Currently I has a single threaded server based on boost ASIO.
This works correctly most of the time.
However on systems where i know that the disk's are slow.
, the server grinds to a halt, when dealing with the blocking
disk IO.

I could not find any examples or documentation in ASIO, in
how to get round these issues. It appears that ASIO does
not provide any support for async' disk IO.

So I assume this is handled by use of threads ?
Are there any examples of using ASIO with threaded disk IO,
since this must be very common use case ?

Is the strand functionality appropriate for handing disk IO,
in an async' manner.

Any recommendations/advice on this issues would be
greatly appreciated.

Best regards,
Ta,
    Avi
_______________________________________________
Boost-users mailing list
Boost-users@lists.boost.org
http://lists.boost.org/mailman/listinfo.cgi/boost-users

Hi Avi,

If your server performs short read/writ frequently and data to be transfer to network depend on these operations, then multi-threading does not help a lot here. I would suggest you to recheck your I/O strategies and make sure they are optimized. e.g. buffering, cache, .. etc. If they are perfect but performance still bother you, then consider to use memory mapped file or libaio.

Best,
Acer.