Page 1 of 1

Suggestion for Newsletter's server

Posted: 2010-07-06 15:13
by maggiore81
Hello
One of my customer asked me to prepare a server capable to deliver a daily newsletter of 15.000 recipients, with a message size of average 100 Kbyte.

The server should also be a POP3 server (for about 20 mailboxes). SMTP and POP3 is allowed, no IMAP.

Actually the server I use, is shared amongs many customers, and manages about 300 mailboxes (no IMAP), and runs on a VPS (Intel Xeon based) with 384mbyte of RAM and 10Gig HDD; Windows 2003 x64 running on Virtuozzo vps system. It is connected to the internet via a 100mbit open link.

My current hmail settings are:

command threads: 30
delivery thread: 100
async threads: 15
in the SMTP Settings, I allow max 50 recipients in batch.
I use the integrated mysql Db from Hmail 4.4 (upgraded then to 5.x)

I would like to do one of these choices:

1) I use the actual VPS server.
What settings should I change in the hmail settings? Will be the cpu or what else under heavy load?

2) I use another VPS with 512mb ram just for this customer
3) I use a dedicated phisical server (Xeon, 4gb ram, Win 2008 standard, 2x500gb sata)


What could you suggest for me?

Re: Suggestion for Newsletter's server

Posted: 2010-07-06 15:19
by ^DooM^
If you have a lot of users using the mailserver it is advisable to use a second mailserver to send email out with else you will clog up your mail queue and noone will be able to collect any email untill all 15k emails are delivered.

Re: Suggestion for Newsletter's server

Posted: 2010-07-06 15:41
by maggiore81
Hello Doom, thanks for your quick reply.

I also think that using a separate mailserver is the best solution to avoid having a very long queue during business hours.

Why you said that:
<< If you have a lot of users using the mailserver it is advisable to use a second mailserver to send email out with else you will clog up your mail queue and noone will be able to collect any email untill all 15k emails are delivered. >>

Well, why the users cant read mail via pop3 while the server has a smtp queue ??

thank you

Re: Suggestion for Newsletter's server

Posted: 2010-07-06 16:01
by Bill48105
Hi maggiore81,
Of course running on 2nd server would be best/fastest but with your fast upload speed as long you get you don't overload the server with your settings I'd guess it should be able to keep up especially if you had no external antivirus scanners.. To me the question is if SQL can keep up but I bet you could tweak settings to get it to work ok especially with so few pop users & no IMAP. Again external virus scanner would be big factor.

I think DooM meant that the queue will be filled with those newsletter messages so if new mail comes in (or even if local users email each other) they won't get delivered (inside or out) until the queue works down to those new messages.. The queue is simple FIFO. First In, First Out.
Bill

Re: Suggestion for Newsletter's server

Posted: 2010-07-06 16:04
by ^DooM^
Users can read pop3 mail if it has been delivered to their mailbox however, mail that comes in is added to the queue as is internal email and all outgoing email is also added to the queue. hMail currently takes a stoic action in that email is not allowed to push infront of other email waiting to be delivered which is where the traffic builds up. In my own testing it takes about 30 minutes to clear a queue of about 20000 not taking into account failed and retry later email. so if you have email stuck at the end of the queue it's going to take 30 minutes before anyone receives or sends anything.

There are feature requests to improve hmails queue abilities.

Re: Suggestion for Newsletter's server

Posted: 2010-07-06 16:08
by maggiore81
Thank you for you clear answer.

So you suggest me a separate box... well, how should I configure the hmail parameters for this task?
Is ok to keep the classic mysql db ?

Re: Suggestion for Newsletter's server

Posted: 2010-07-06 16:22
by Bill48105
Btw, something that would help with the queue issue would be to split your distribution list into a few lists so you can spread them out throughout the day.. Sending them in batches would help a lot but odds are your best bet is to use 2nd server if you have active users on it too.

Not sure we can tell you what settings will work though, you'll need to try on your server & see.. If CPU & upload are not overloaded & queue is full increase them until you are content with balance.
Bill

Re: Suggestion for Newsletter's server

Posted: 2010-07-06 17:03
by ^DooM^
I use hmails internal DB for sending out email newsletters, it works perfectly fine. I also send emails to the queue in batches. I developed (in php) a batch sending process that adds all my newsletters to my database, then i have a cron script that pulls 1000 emails at a time every 10 minutes from the database and sends them to the server for sending to our recipients. This process has worked fine for me for years.

Re: Suggestion for Newsletter's server

Posted: 2010-07-07 11:37
by maggiore81
Hello,
If I need to do a new install, do you suggest me using internal SQL CE server?

The new server will serve 10 POP3 accounts (no imap) and the sending of the 15.000 mails on a daily basis (100k average size).

Re: Suggestion for Newsletter's server

Posted: 2010-07-07 12:16
by ^DooM^
Yes that will be fine to use builtin DB as long as you understand that if any of those 10 accounts want to send or receive email, they will have to wait till the 15k emails have gone through.

Re: Suggestion for Newsletter's server

Posted: 2010-07-07 12:17
by maggiore81
Hello
I have perfecly understood the SMTP queue and how it works, thanks to you explication yesterday.

I used to install hmail 4.4 and the mysql db on it, then upgrade to the latest... because I used sqlyog to do "maintenance" on the db when it needed repair.