Hi,
I am running Postfix 2.5.6 on a Fedora 11 Linux system on a hardware
based Intel I5/750 Quad Core, 8 Gb memory, 160Gb SSD hard disk.
Incoming messages are entering very fast (500 smtp processes declared)
and the active queue is actually of 2 millions messages waiting for
delivery.
The delivery, for all messages should go through a farm of 30 MX servers
from domain localpc2105.com, on load balancing through DNS resolution.
DNS server is of course local. All 30 MX servers are running qmail. All
of them are more than 90% idle. Before I set up my postfix server, email
were sent directly to the qmail servers, and qmail was running at full
CPU. So I am sure that qmail can handle much more faster. I have set up
the postfix server to load balance the load between all the 30 qmail
servers to avoid situation where some were running at full charge and
others were not working.
Postfix server, 30 Qmail servers, DNS are on the same 1Gb LAN.
I don't need any messages or clients or recipients control at this
stage. No anti spam, no anti virus. All this is already done by qmail
servers, despite my plan is to replace all qmails by postfix.
CPU is more than 85% idle on my postfix I5/750 box, but the outbound
queue is very very slow.
It seems that something refrain qmgr to work at full range, despite the
parameters
here is my main.cf file:
queue_directory = /var/spool/postfix
command_directory = /usr/sbin
daemon_directory = /usr/libexec/postfix
data_directory = /var/lib/postfix
mail_owner = postfix
myhostname = postfix.proacti5.net
mydomain = localpc2105.com
inet_interfaces = all
mydestination = $myhostname, localhost.$mydomain, localhost
unknown_local_recipient_reject_code = 550
mynetworks = 172.27.27.0/24, 10.0.0.0/24, 127.0.0.0/24
relayhost = $mydomain
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
local_destination_recipient_limit = 500
local_destination_concurrency_limit = 50
debug_peer_level = 8
debug_peer_list = orange.fr
debugger_command =
PATH=/bin:/usr/bin:/usr/local/bin:/usr/X11R6/bin
ddd $daemon_directory/$process_name $process_id & sleep 5
sendmail_path = /usr/sbin/sendmail.postfix
newaliases_path = /usr/bin/newaliases.postfix
mailq_path = /usr/bin/mailq.postfix
setgid_group = postdrop
html_directory = no
manpage_directory = /usr/share/man
sample_directory = /usr/share/doc/postfix-2.5.6/samples
readme_directory = /usr/share/doc/postfix-2.5.6/README_FILES
inet_protocols = all
default_process_limit = 1000
initial_destination_concurrency = 100
transport_initial_destination_concurrency = 100
default_destination_concurrency_failed_cohort_limit = 10
default_destination_recipient_limit = 200
transport_destination_recipient_limit = 100
default_delivery_slot_cost = 30
default_minimum_delivery_slots = 30
default_delivery_slot_discount = 100
smtpd_peername_lookup = no
default_recipient_limit = 2000000
mailbox_size_limit = 5120000000
qmgr_message_active_limit = 2000000
qmgr_message_recipient_limit = 2000000
default_destination_concurrency_limit = 500
lmtp_destination_concurrency_limit = $default_destination_concurrency_limit
relay_destination_concurrency_limit = $default_destination_concurrency_limit
smtp_destination_concurrency_limit = $default_destination_concurrency_limit
max_use = 1000
mime_nesting_limit = 100
qmgr_fudge_factor = 200
queue_file_attribute_count_limit = 250
smtpd_history_flush_threshold = 100
smtpd_junk_command_limit = 100
smtp_connect_timeout = 10s
smtp_data_done_timeout = 10s
smtp_mail_timeout = 5s
Here is my master.cf file:
service type private
(yes)
unpriv
(yes)
chroot
(yes)
wakeup
(never)
maxproc
(100)
command + args
smtp inet n - n - - smtpd
pickup fifo n - n 60 1 pickup
cleanup unix n - n - 0 cleanup
qmgr fifo n - n 30 1 qmgr
tlsmgr unix - - n 1000? 1 tlsmgr
rewrite unix - - n - - trivial-rewrite
bounce unix - - n - 0 bounce
defer unix - - n - 0 bounce
trace unix - - n - 0 bounce
verify unix - - n - 1 verify
flush unix n - n 1000? 0 flush
proxymap unix - - n - - proxymap
proxywrite unix - - n - 1 proxymap
smtp unix - - n - - smtp
relay unix
-o smtp_fallback_relay= - - n - - smtp
showq unix n - n - - showq
error unix - - n - - error
retry unix - - n - - error
discard unix - - n - - discard
local unix - n n - - local
virtual unix - n n - - virtual
lmtp unix - - n - - lmtp
anvil unix - - n - 1 anvil
scache unix - - n - 1 scache
I tried many combinations to speed up the delivery. Nothing help up to now.
I have look up in tons of threads in many places but haven't found a
real solution.
I just found that Postfix could send 1 million emails per hour when I
send less than a half million in 24 hours.
Please help
Patrick