-6

Here's the scenario.

  1. We create a campaign in our database of email addresses ( around 200K emails per campaign).
  2. We send 4 such campaigns (newsletters) daily.
  3. The emails are such that a lot of users will come to the site as soon as they receive the email.
  4. So, even before our campaign has finished, the load on the server gets double high because users have already started clicking.
  5. The campaign sending cron job and receiving php script are both on the same server setup (1 Web Server + 1 DB Server + 1 Mail Server).

However, the hosting company now screaming that we have very high IOPS on their cloud (roughly 2000+) so they are going to downgrade us soon.

What should be our next plan of action and how to optimize this to keep it going over the holiday season.

Mark Henderson
  • 68,823
  • 31
  • 180
  • 259
Khuram
  • 109
  • 3
  • 8

1 Answers1

1

You can either reduce the IOPS you are doing or pay for more of them. If you don't have the time or the experience level to do the first option (one of your other questions suggests that it will take you a while to get this right, this one makes me think you're doing a lot of swapping), you'll probably want to go for the second option.

The whole point of "the cloud" is that you can scale your servers out easily. It does still take some work on your part making sure you can deploy your app to your new server and balance across them, but it should be not much more than logging in to the control panel and clicking "create server".

If you're having troubles with spiky traffic patterns caused by your mailout, you could try sending your emails more slowly so that the load is more evenly spread over the entire day.

Ladadadada
  • 26,337
  • 7
  • 59
  • 90
  • Thank you errrr @Ladadadadada we have asked the hosting company to look into this. I will update the question when I find out more. – Khuram Nov 23 '12 at 12:28