On Tue, 2010-01-12 at 17:00 -0600, Tim Nelson wrote: > Greetings all- > > I'm on a quest to do some serious tuning to some of my production systems. All are on CentOS 5.x ranging from 5.0 to 5.4. I've been reading up on the various IO schedulers available in the kernel and I'm hoping some of you can lend some insightful suggestions. I typically have three classes of system in production: > > 1. Storage/DB - Backend nodes for the application servers, MySQL, NFS storage serving to frontend nodes (deadline?) > 2. Web/SSL - Frontend nodes serving up web application (PHP/MYSQL), heavy SSL {en/de}cryption with both HTTPS/Apache as well as branch locations connecting via OpenVPN (cfq?) > 3. Telephony/Communications - VoIP, usually Asterisk (full signaling + media services), massive context switching, very timing sensitive (Meetme conferencing, IAX2 trunk mode, etc) (deadline?) > > In my reading, I've found most people recommend deadline for DB intensive systems. CFQ seems to be recommended for most other uses. Noop and as seem to be irrelevant. Is this correct or am I way off base? You cant go by that. What works for them prolly want work for you. > I'm not currently under any enormous load on any of these systems, but I'm planning for growth and would like to see how different schedulers can make a difference. > > I welcome your suggestions and experiences. :-) > > --Tim --- What is "nr _requests" for your DB Servers, honest you need many many writes for this. cat /sys/block/sda/queue/nr_requests Really to be honest with you every machine is different, even if you have 2 IBM pServers with the same harware. I don't have any mysql servers but I do run IBM DB2 with "nr_request @ almost 10000. Not to mention you could also tune your TCP/IP stack also. Also using blockdev to tune the disks. No one really tell you exactly what you need. BTW I have seen mysql running @ a rate of over 10000 on nr_request. Takes a bit of high end hardware. John