Posted by threading_signals on February 10, 2011 at 6:25am
I'm curious if either kqueue (FreeBSD) or eventport (Illumos) will ever be ported to Debian.
This link http://www.daemonforums.org/showthread.php?t=2124
...suggests to me that either a Kqueue or an Eventport based kernel would be the fastest for Nginx, if the OS is stable.
http://snaprails.tumblr.com/post/325624962/linux-performance-benchmark-a...
Comments
What are you talking about?
That "test" you referenced above is quite old. Linux supports epoll quite nicely. And has been so for quite sometime. That's a kernel thing. Has nothing to do with Debian.
If the kernel supports, it will be available.
cat /proc/sys/fs/epoll/max_user_watchesshows you the maximum number of file descriptors that a user can register across all epoll instances on the system.
Have you checked either Grace's config or mine above? They both use epoll. That's made available through the Events module. For extreme performance this setting both in Nginx config and at the OS level can be tweaked. Finally
man 7 epoll.No kqueue support AFAIK. That's available only on FreeBSD. Other performance goodies like
sendfileand AIO are also available on Linux.Just to add
that if you want to try your hand at kqueue you can experiment with the brand new FreeBSD based release of Debian: http://wiki.debian.org/Debian_GNU/kFreeBSD_FAQ
Included in the latest Squeeze release. Not yet a week old. This is your typical Debian with the great apt and other GNU tools but with a FreeBSD kernel instead of Linux.
That's an interesting option if you can get it to run in your hosting environment. Nginx is developed primarily on FreeBSD and there's lot of information about Nginx high-performance OS tuning on FreeBSD.
Also on one of those links you provided it is said that you need to manually alter the number of maximum file descriptors. That's untrue if you run the master process as root. It will be able to increase this limit through the setting
worker_rlimit_nofileof the Core module.Thanks perusio. I did not
Thanks perusio. I did not remember that a port was taking place, but it's good to know that it's arrived. =)
My hosting environment allows building custom kernels to PV_GRUB, but I would have to learn PF instead of using iptables, and getting up to speed on Xen environments makes it a nontrivial long term task. They report that noone has such a kernel within their colocation facilities. If I boot into in the future, I will post some info here. If it offers a 10-30% performance boost, I think it's worth it to squeeze more performance out of the box, since install scripts make provisioning a non-issue thereafter. Maintenance is another matter.
Oh, and I will take a look at
Oh, and I will take a look at the configurations that you mentioned. It should make a difference, thanks.