ScaleArc shields applications from database downtime, whether planned or unplanned, enabling you to deliver continuous availability.
Databases go down, for maintenance windows or because they fail. Apps are tied to databases, so when the database goes down, even if it fails over fast, the apps connected to that database suffer the interruption. Apps hang, web pages don’t load, shopping carts get flushed.
The ScaleArc software, sitting between your apps and databases, acts as an abstraction layer and shields apps from database outages. The ScaleArc software enables:
- app-transparent failover – during a database failure, the ScaleArc software immediately recognizes the failover is happening. Any transactions in flight past the ScaleArc software and headed for the downed server will fail, as they should for data integrity reasons. ScaleArc handles the subsequent traffic in two ways. For writes headed to a downed primary, ScaleArc will hold those writes in our queue, waiting for the new primary to take over. For reads headed to a secondary, ScaleArc will continue to load balance those queries. Once the new primary is ready to take over, ScaleArc drains its queue in a FIFO (first in, first out) manner, again for ACID compliance reasons, and the database commits the transactions.
- zero downtime maintenance – applying patches and performing other maintenance tasks happen far more often than failures, and using ScaleArc to enable continuous availability despite maintenance windows provides significant business value. To start, simply mark a server to go offline in the ScaleArc software. The software will let existing transactions finish gracefully but not send any additional traffic to that server. Then you can take the server offline and apply patches or other updates. The ScaleArc software will route around this offline server, directing reads to the other available servers. When the maintenance is complete, you mark the server ready to go back online again. The ScaleArc software will perform a health check, ensure the server is caught up on replication, and then start directing reads to it again. You can perform rolling updates across the database cluster and never have to take down the application. When it’s time to update the primary, you invoke a forced failover like the scenario outlined in the “app-transparent failover” section. No more delaying security patches because it’s too hard to find a time to take the app offline.
So use ScaleArc, and enable continuous availability for your apps.