There are many file systems for a Linux server administrator to choose from. Also, it is not always an easy task to figure out the appropriate layout and optimal file system for your needs.
Can you suggest some guidelines for choosing the "optimal" file system for a Linux server? I know this is a general question. Let us be more specific. I will put it this way.
1- I have a caching web proxy server. The proxy usually needs to store many small objects and also there are some medium and large objects. I think the web server case will be similar.
2- I have an email server. It needs to save the users' messages.
3- I have a database server.
All these three servers require very much IO access (read and write).
For other types of servers, I think it is not so critical. For example, a Linux-based firewall does not require HD access like a proxy or web server. Most of its processing is done in the memory.
I think the best answer will suggest the appropriate file system for each server (preferably with justifications). Let us focus on performance as the factor to base our suggestions on.