3 ms·
Flash: An efficient and portable Web server (1999) [pdf]
- daurnimator 11y agoInteresting approach. using mmap + mincore is a bit racy; but about as good as you could do at the time. I wonder how it compares to linux async io?
- smegel 11y ago> I wonder how it compares to linux async io? Well there are two kinds - the POSIX API provided by glibc that just uses threads in userspace to offload IO (so its basically no different to running your own thread-pool), and the kernel provided io_* async routines that bypass the page cache so are of limited use. FreeBSD provides better async block IO...with read completion events popping of the end of your kqueue alongside all your other events (socket, timers, signals etc). I partially came across this article after researching the claims made in this nginx blog post https://www.nginx.com/blog/thread-pools-boost-performance-9x/ https://www.nginx.com/blog/thread-pools-boost-performance-9x.... I thought it was cool that someone was delving deep into to the heart of the matter 15 years earlier.
- daurnimator 11y agoGoogling around for the "Flash" server I also came across this page: http://read.seas.harvard.edu/cs261/2011/debox.html#fn:1 http://read.seas.harvard.edu/cs261/2011/debox.html#fn:1
- PythonicAlpha 11y agoMight be a good product, but the name "flash" is a little burnt regarding web and web-development.
- nasalgoat 11y agoNot in 1999.