Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to send millions of apple push notification like Urban Airship within several seconds

I need to send millions of apple push notification like Urban Airship within several seconds

I used the following

  • http://code.google.com/p/apns-php/
  • http://www.easyapns.com/
  • http://developer.apple.com/library/mac/#documentation/NetworkingInternet/Conceptual/RemoteNotificationsPG/ApplePushService/ApplePushService.html

I have several dedicated servers, I can send thousands of push notification within several seconds, but how can I send millions of apple push notification like Urban Airship within several seconds?

like image 253
Md Mahbubur Rahman Avatar asked Aug 29 '12 05:08

Md Mahbubur Rahman


1 Answers

Every server has limited capacity to perform certain task. You cant assume that your dedicated server with some xyz configuration will achieve every NFR for you application. You have to do server capacity planning to achieve your application NFR. If your dedicated server is able to send 10K of push notification with in 1 seconds with optimize configuration of server and application, and you want to achieve 20K of notification in 1 second, you have to do horizontal/vertical scaling of server.

In horizontal scaling you put another parallel instance and divide the task between them, however in vertical you scale the same server to have higher configuration. Vertical scaling is somehow not recommended as it has single point of failure.

For your problem to scale you have to put another instance in parallel in divide the push notification sending task between them. For example if you want to send 20K push notification with in a second for 20K devices, you can divide first 10K to first server and next 10K to another one. This will achieve your NFR of sending 20K push notification with in a second.

like image 50
Ajay Tiwari Avatar answered Oct 01 '22 18:10

Ajay Tiwari