Reliable Messaging to Millions of Users with MigratoryData
This addresses the need for scalable and reliable notification services for businesses with millions of subscribers, but it appears incremental as it builds on existing pub/sub models.
The authors tackled the problem of building a highly-scalable notification service for web-based pub/sub systems, and the result was MigratoryData, which demonstrated the ability to handle millions of concurrent connections reliably despite failures.
Web-based notification services are used by a large range of businesses to selectively distribute live updates to customers, following the publish/subscribe (pub/sub) model. Typical deployments can involve millions of subscribers expecting ordering and delivery guarantees together with low latencies. Notification services must be vertically and horizontally scalable, and adopt replication to provide a reliable service. We report our experience building and operating MigratoryData, a highly-scalable notification service. We discuss the typical requirements of MigratoryData customers, and describe the architecture and design of the service, focusing on scalability and fault tolerance. Our evaluation demonstrates the ability of MigratoryData to handle millions of concurrent connections and support a reliable notification service despite server failures and network disconnections.