A Highly Reliable Faulttolerant Airline Reservation System Zoheb
A Highly Reliable Fault-tolerant Airline Reservation System Zoheb Sait (zs 29) Sandeep Varma (sv 83)
Software Ø Ø Platform: ASP. NET Programming Languages: C# & VB Database Server: MS SQL Server 2000 Group Communication System: Spread
Architecture Prototype used: v Two Web Servers v Two Database Servers v Single Load Balancer v -- Easily Scaleable
Failover Ø v v Database level: Reads from any database server Synchronous writes to all database servers through Spread Transparent Failover Auto-Reconfiguration and synchronization into group on recovery Application Server level: Load Balancer maintains list of available web servers LB does transparent redirect of offline web server load to available web servers
Processes Ø The database replication is provided by a process named ‘Spread. Listener’ a daemon which runs as a windows service Ø ‘Heart. Beat. Monitor’ provides transparent fail-over to available database servers Ø ‘Load Balancer’ distributes clients requests in round-robin manner, and provides transparent web server fail-over
Performance Tests Test: 500 users connecting in intervals of 2 sec in 5 users batch at a time Case 1: Replication Disabled v/s Enabled Ø Average Response time was 74 ms with replication enabled Ø Average response time was 51 ms with replication disabled
Performance Tests Case 2: LB and Replication v/s No LB and Repl Ø Average Response time was 51 ms with load balancing and replication disabled Ø Average Response time dropped to 19 ms with load balancing and replication.
Application Stress Test Ø v With replication disabled: ~200 errors With replication enabled: ~400 errors Ø Maximum number of concurrent transactions without failure: v ~ 60 transactions/per sec without a load balancer ~ 90 concurrent transactions per/sec with a load balancer v
- Slides: 8