Nginx - Google Summer of Code ideas

Marcus Clyne eugaia at
Fri Mar 13 17:58:24 MSK 2009

> but AIO could be serious boost for large out-of-cache files, because it eliminates blocking.
As part of a project I'm working on, I'm going to implement a generic, 
embeddable, lightweight, disk-and-memory object caching engine, that 
would use disk AIO for the disk operations.  It would basically be 
similar to the role of memcached, but could be embedded (as well as 
accessed via sockets) and would include disk caches too (if you want to 
use that feature).

This could be used both for page caching and for storing other data 
objects, and could be optimized to store the most frequently used 
objects in memory.

For this, I'll be using AIO for the disk accesses.  I don't know when 
I'll be doing this particular feature (some time within the next few 
months probably), but if no-one else has already done so, I'm happy to 
write some AIO code for Nginx in the process.

> Here I disagree: linux kernel supports notification via eventfd since 2.6.18. eventfd syscall is available as of glibc 2.8, which is a part of e.g. ubuntu intrepid distribution. 
Valery, have you done performance comparisons between eventfd and 
aio_read() etc?  Which one fared better in your experience?



More information about the nginx mailing list