Design Patterns for Resilient Distributed Subscription Platforms in Cloud Environments
Abstract
Modern Software-as-a-Service (SaaS), media, telecommunication, finance, and enterprise systems use cloud-native subscription platforms as their core infrastructure where millions of subscribers subscribe to, renew, upgrade, and unsubscribe from digital services. With the expansion of cloud-native subscription platforms in the geographically distributed cloud infrastructures, providing high levels of availability, transactional consistency, fault tolerance, and scalability has been made difficult because of various issues like failures of cloud infrastructure, network congestion, dynamic nature of workload, and dependence on distributed services. Current cloud-based distributed systems’ architectures focus on optimizing individual concerns like management of infrastructure, management of traffic, and scheduling of resources without any complete approach for resiliency. In order to overcome these constraints, this paper proposes the Resilient Design Pattern-based Distributed Subscription Platform (RDP-RDSP), which incorporates Circuit Breaker, Bulkhead Isolation, Saga Pattern, CQRS, Event Sourcing, Retry Mechanism, Distributed Cache, Service Discovery, and Message Queue in one consolidated cloud-native approach. Smart monitoring monitors the health of the infrastructure and provisions cloud resources whenever the resiliency metrics are breached. Experiments conducted with varying workloads between 10,000 to 50,000 concurrent subscriptions have been shown to outperform NBBM and C3PDAR approaches. The performance of the proposed framework was demonstrated with maximum Subscription Processing Throughput of 9,428 req/sec, 99.72% Service Availability, 159 ms Response Time, 99.31% Failure Recovery Ratio, 96.42% Resource Utilization Efficiency, 99.46% Fault Isolation Efficiency, 98.72% Scalability Efficiency, and overall Composite Resilience of 99.82%. The results indicate the benefits of using complementary design patterns for increasing resilience.