My VPS has hundreds of POP3-Login and IMAP processes recently. Even each process consumes only 0.1% of the main memory, 100 processes can eat up 10%!
After seeking help to Google, I' ve found the answer:
First , set max connection number of smtp process.
1. Edit Postfix configuration file. If you installed Postfix by yum, the configuration file should be located at /etc/postfix/main.cf;
2. Add the line below at the bottom of main.cf
smtpd_client_connection_rate_limit = 100
Tuning the number as you like.
Second , modify the configuration of Dovecot.
1. Edit Dovecot config file. If you installed it by yum, this file should be located at /etc/dovecot.conf
2. Add the line below
login_max_processes_count = 20
If the processes number exceeds 20, older ones will be destroyed.
Third, restart services.
service postfix restart service dovecot restart
Reference:
[1] http://www.postfix.org/TUNING_README.html#conn_limit
[2] http://wiki.dovecot.org/MainConfig