Slow sending speed

Anand

Member
Hi,

I am able to send only 90-100 emails per minute. My server config is 8gb, 4 core, ssd drive. But the sending speed is very slow. I tried many combinations nothing is working PNCTL is installed on server. Can anyone help. What could be done to speed it up? Around 1000-2000 email per hour.
 
Please see the below output. I ran few times to see and noticed it takes 2 minutes to complete 100 emails to send out. Below is the result of first few lines.


[root@gotoinbox ~]# /usr/bin/php -q /var/www/html/wiz/apps/console/console.php send-campaigns --verbose=1
PHP Deprecated: Comments starting with '#' are deprecated in /etc/php.ini on line 1640 in Unknown on line 0
PHP Warning: Module 'pcntl' already loaded in Unknown on line 0
[2016-08-15 10:01:57] - Loading 10 campaigns, starting with offset 0...
[2016-08-15 10:01:57] - Found 2 campaigns and now starting processing them...
[2016-08-15 10:01:57] - Since PCNTL is active, we will send 5 campaigns in parallel and for each campaign, 5 batches of subscribers in parallel.
[2016-08-15 10:01:57] - Campaign Worker #1 looking into the campaign with ID: 21
[2016-08-15 10:01:57] - Campaign Worker #1 looking into the campaign with ID: 22
[2016-08-15 10:01:57] - This campaign belongs to Sanchit anand(uid: zl082ovw5j1c1).
[2016-08-15 10:01:57] - This campaign belongs to Sanchit anand(uid: zl082ovw5j1c1).
[2016-08-15 10:01:57] - Changing the campaign status into PROCESSING!
[2016-08-15 10:01:57] - Changing the campaign status into PROCESSING!
[2016-08-15 10:01:57] - Looking for subscribers for campaign with uid tt51196z795e7...(This is subscribers worker #1)
[2016-08-15 10:01:57] - Looking for subscribers for campaign with uid tt51196z795e7...(This is subscribers worker #2)
[2016-08-15 10:01:57] - Looking for subscribers for campaign with uid kj747va2xda16...(This is subscribers worker #1)
[2016-08-15 10:01:57] - Looking for subscribers for campaign with uid kj747va2xda16...(This is subscribers worker #2)
[2016-08-15 10:01:57] - Looking for subscribers for campaign with uid kj747va2xda16...(This is subscribers worker #3)
[2016-08-15 10:01:57] - Looking for subscribers for campaign with uid tt51196z795e7...(This is subscribers worker #3)
[2016-08-15 10:01:57] - Looking for subscribers for campaign with uid kj747va2xda16...(This is subscribers worker #4)
[2016-08-15 10:01:57] - Looking for subscribers for campaign with uid tt51196z795e7...(This is subscribers worker #4)
[2016-08-15 10:01:57] - Looking for subscribers for campaign with uid tt51196z795e7...(This is subscribers worker #5)
[2016-08-15 10:01:57] - Looking for subscribers for campaign with uid kj747va2xda16...(This is subscribers worker #5)
^[[2016-08-15 10:01:58] - This subscribers worker(#1) will process 100 subscribers for this campaign...
[2016-08-15 10:01:58] - Running subscribers cleanup...
[2016-08-15 10:01:58] - This subscribers worker(#2) will process 100 subscribers for this campaign...
[2016-08-15 10:01:58] - Running subscribers cleanup...
[2016-08-15 10:01:59] - This subscribers worker(#5) will process 100 subscribers for this campaign...
[2016-08-15 10:01:59] - Running subscribers cleanup...
[2016-08-15 10:01:59] - Checking subscribers count after cleanup: 100
[2016-08-15 10:01:59] - Entering the foreach processing loop for all 100 subscribers...

[2016-08-15 10:01:59] - kalaa_s@***.com - 1/100
[2016-08-15 10:01:59] - Checking if we can send to domain of kalaa_s@***.com...
[2016-08-15 10:01:59] - Checking subscribers count after cleanup: 100
[2016-08-15 10:01:59] - Entering the foreach processing loop for all 100 subscribers...

[2016-08-15 10:01:59] - kaebonbon@***.com - 1/100
[2016-08-15 10:01:59] - Checking if we can send to domain of kaebonbon@***.com...
[2016-08-15 10:01:59] - Checking if kaebonbon@***.com is blacklisted...
[2016-08-15 10:01:59] - Checking if kalaa_s@***.com is blacklisted...
[2016-08-15 10:01:59] - This subscribers worker(#4) will process 100 subscribers for this campaign...
[2016-08-15 10:01:59] - Running subscribers cleanup...
[2016-08-15 10:01:59] - This subscribers worker(#3) will process 100 subscribers for this campaign...
[2016-08-15 10:01:59] - Running subscribers cleanup...
[2016-08-15 10:01:59] - Checking subscribers count after cleanup: 100
[2016-08-15 10:01:59] - Entering the foreach processing loop for all 100 subscribers...

[2016-08-15 10:01:59] - kamalkgupta@***.com - 1/100
[2016-08-15 10:01:59] - Checking if we can send to domain of kamalkgupta@***.com...
[2016-08-15 10:01:59] - Checking if the server is over quota...
[2016-08-15 10:01:59] - Checking if the customer is over quota...
[2016-08-15 10:01:59] - Preparing the entire email...
[2016-08-15 10:01:59] - Checking if the server is over quota...
[2016-08-15 10:01:59] - Checking if the customer is over quota...
[2016-08-15 10:01:59] - Preparing the entire email...
[2016-08-15 10:01:59] - Checking if kamalkgupta@***.com is blacklisted...
[2016-08-15 10:01:59] - Checking subscribers count after cleanup: 100
[2016-08-15 10:01:59] - Entering the foreach processing loop for all 100 subscribers...

[2016-08-15 10:01:59] - kalpanasbansal@***.com - 1/100
[2016-08-15 10:01:59] - Checking if we can send to domain of kalpanasbansal@***.com...
[2016-08-15 10:01:59] - Checking if kalpanasbansal@***.com is blacklisted...
[2016-08-15 10:01:59] - Checking if the server is over quota...
[2016-08-15 10:01:59] - Checking if the customer is over quota...
[2016-08-15 10:01:59] - Preparing the entire email...
[2016-08-15 10:01:59] - Checking if the server is over quota...
[2016-08-15 10:01:59] - Checking if the customer is over quota...
[2016-08-15 10:01:59] - Preparing the entire email...
[2016-08-15 10:01:59] - Checking subscribers count after cleanup: 100
[2016-08-15 10:01:59] - Entering the foreach processing loop for all 100 subscribers...

[2016-08-15 10:01:59] - KAM_GROVER05@***.com - 1/100
[2016-08-15 10:01:59] - Checking if we can send to domain of KAM_GROVER05@***.com...
[2016-08-15 10:01:59] - Checking if KAM_GROVER05@***.com is blacklisted...
[2016-08-15 10:01:59] - Checking if the server is over quota...
[2016-08-15 10:01:59] - Checking if the customer is over quota...
[2016-08-15 10:01:59] - Preparing the entire email...
[2016-08-15 10:01:59] - Using delivery server: 185.**.**.120 (ID: 1).
[2016-08-15 10:01:59] - Sending the email message using the DIRECT method.
[2016-08-15 10:01:59] - Using delivery server: 185.**.**.120 (ID: 1).
[2016-08-15 10:01:59] - Sending the email message using the DIRECT method.
[2016-08-15 10:01:59] - Using delivery server: 185.**.**.120 (ID: 1).
[2016-08-15 10:01:59] - Sending the email message using the DIRECT method.
[2016-08-15 10:01:59] - Using delivery server: 185.**.**.120 (ID: 1).
[2016-08-15 10:01:59] - Sending the email message using the DIRECT method.
[2016-08-15 10:01:59] - This subscribers worker(#1) will process 100 subscribers for this campaign...
[2016-08-15 10:01:59] - Running subscribers cleanup...
[2016-08-15 10:01:59] - This subscribers worker(#5) will process 100 subscribers for this campaign...
[2016-08-15 10:01:59] - Running subscribers cleanup...
[2016-08-15 10:01:59] - This subscribers worker(#4) will process 100 subscribers for this campaign...
[2016-08-15 10:01:59] - Running subscribers cleanup...
[2016-08-15 10:01:59] - Using delivery server: 185.**.**.120 (ID: 1).
[2016-08-15 10:01:59] - Sending the email message using the DIRECT method.
[2016-08-15 10:01:59] - This subscribers worker(#2) will process 100 subscribers for this campaign...
[2016-08-15 10:01:59] - Running subscribers cleanup...
[2016-08-15 10:01:59] - This subscribers worker(#3) will process 100 subscribers for this campaign...
[2016-08-15 10:01:59] - Running subscribers cleanup...
[2016-08-15 10:01:59] - Checking subscribers count after cleanup: 100
[2016-08-15 10:01:59] - Entering the foreach processing loop for all 100 subscribers...

[2016-08-15 10:01:59] - shankar.jha@***.co.in - 1/100
[2016-08-15 10:01:59] - Checking if we can send to domain of shankar.jha@***.co.in...
[2016-08-15 10:01:59] - Checking subscribers count after cleanup: 100
[2016-08-15 10:01:59] - Entering the foreach processing loop for all 100 subscribers...

[2016-08-15 10:01:59] - shahaaditya@***.com - 1/100
[2016-08-15 10:01:59] - Checking if we can send to domain of shahaaditya@***.com...
[2016-08-15 10:01:59] - Checking if shahaaditya@***.com is blacklisted...
[2016-08-15 10:01:59] - Checking if shankar.jha@***.co.in is blacklisted...
[2016-08-15 10:01:59] - Checking subscribers count after cleanup: 100
[2016-08-15 10:01:59] - Entering the foreach processing loop for all 100 subscribers...

[2016-08-15 10:01:59] - aslam.khan@***.com - 1/100
[2016-08-15 10:01:59] - Checking if we can send to domain of aslam.khan@***.com...
[2016-08-15 10:01:59] - Checking if the server is over quota...
[2016-08-15 10:01:59] - Checking if the customer is over quota...
[2016-08-15 10:01:59] - Preparing the entire email...
[2016-08-15 10:01:59] - Checking subscribers count after cleanup: 100
[2016-08-15 10:01:59] - Entering the foreach processing loop for all 100 subscribers...

[2016-08-15 10:01:59] - shailendra@***.in - 1/100
[2016-08-15 10:01:59] - Checking if we can send to domain of shailendra@***.in...
[2016-08-15 10:01:59] - Checking if the server is over quota...
[2016-08-15 10:01:59] - Checking if the customer is over quota...
[2016-08-15 10:01:59] - Preparing the entire email...
[2016-08-15 10:01:59] - Checking if aslam.khan@***.com is blacklisted...
[2016-08-15 10:01:59] - Checking if shailendra@***.in is blacklisted...
[2016-08-15 10:01:59] - Checking if the server is over quota...
[2016-08-15 10:01:59] - Checking if the customer is over quota...
[2016-08-15 10:01:59] - Preparing the entire email...
[2016-08-15 10:01:59] - Checking if the server is over quota...
[2016-08-15 10:01:59] - Checking if the customer is over quota...
[2016-08-15 10:01:59] - Preparing the entire email...
[2016-08-15 10:01:59] - Checking subscribers count after cleanup: 100
[2016-08-15 10:01:59] - Entering the foreach processing loop for all 100 subscribers...
 
@Anand - Put all the output in a file and PM me with it, i need to see the entire output, not just part of it.
Code:
/usr/bin/php -q /var/www/html/wiz/apps/console/console.php send-campaigns --verbose=1 >/var/log/mailwizz.log
 
Hi All,

Do any one have idea of slow speed. I am able to send only 10k or less than that per hour. It took 2 days to send 300k emails. I have tried many things. Somehow the cron stops working for 5 -10 minutes and starts again. I tested that by refreshing my screen again and again. Hope we have a solution for this?
 
Hi, I am not able to fix the speed issue. I have tried many combination and reached maximum volume of 1800/min. I am ok with this speed but the problem is the speed keeps on decreasing. I have also tested that the campaign send email fastly when we increase parrallel process. But with high number of parallel process it takes 5-8 minutes to create batches and then 2-3 minutes to send email. This is really very slow speed. With time the sending time increases for creating batches upto 30 minutes. It is also eating up cpu and ram upto 7 GB ram and CPU utilization upto 95% while creating batches. I understand it also depend on latency of SMTP server but with same server config. This is happening for only 1 campaign. Can anyone give me a expert advice on this or MWZ work this way only?
 
Back
Top