asio: how to handle disk IO, recommendations
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
On Tue, Oct 23, 2012 at 9:19 PM, Avi Bahra
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.
participants (2)
-
Acer Yang
-
Avi Bahra