Why Banks and Legacy Systems Fail to Implement Zero Downtime even in 2025 ?
Summary
TLDRIn this video, Abhishek explores why banks still experience maintenance windows despite modern applications like Uber achieving zero downtime deployments. He delves into the challenges banks face, including monolithic architecture, outdated database systems, and infrequent feature updates. Abhishek explains how transitioning to microservices and using strategies like canary deployments can significantly reduce downtime. He also touches on the role of feature flags in reducing downtime during testing. Ultimately, he highlights the gap between legacy banking systems and modern deployment practices, offering insights into how banks can move toward zero downtime.
Takeaways
- 😀 Uber's ability to implement zero downtime deployments raises the question: why can't banks do the same in 2025?
- 😀 Banks often schedule maintenance windows for deployments, which result in downtime and limit user transactions.
- 😀 Monolithic architecture, where large codebases are bundled into a single package, contributes to maintenance downtime.
- 😀 Simple updates in monolithic systems can cause significant downtime, as entire applications need to be redeployed for minor changes.
- 😀 Microservices architecture helps reduce downtime by breaking applications into smaller, independently deployable parts.
- 😀 With microservices, specific components (e.g., login, payments, notifications) can be updated without affecting the entire system.
- 😀 Zero downtime deployment in microservices requires additional strategies like canary deployments, where traffic is gradually shifted to new versions.
- 😀 Canary deployments allow for a gradual transition with controlled testing and lower impact, enabling near-zero downtime.
- 😀 Legacy systems in banks often rely on old databases that cannot handle zero downtime database migrations.
- 😀 Feature flags offer flexibility by allowing features to be toggled on or off, reducing the impact of potential issues during deployment.
- 😀 By adopting microservices, proper deployment strategies like canary deployments, and modern tools like feature flags, banks can reduce maintenance downtime significantly.
Q & A
Why do banks still have maintenance windows for deployments, while other industries like Uber manage zero downtime?
-Banks continue to have maintenance windows for deployments due to several factors, including the use of monolithic architecture, legacy systems, and the complexity of ensuring seamless user experiences during updates. Modern applications like Uber, however, use microservices and sophisticated deployment strategies to achieve zero downtime.
What is monolithic architecture, and how does it impact zero downtime deployments?
-Monolithic architecture is when an application is written in one large block of code, typically bundled into a single package. This makes it difficult to deploy small changes without affecting the entire system. A simple update, like changing a footer, requires redeploying the entire application, leading to longer downtime as tests are run for the whole system.
How do microservices improve deployment times compared to monolithic systems?
-In a microservices architecture, applications are broken down into smaller, independent components based on functionality, such as login or payments. This allows for more focused updates and testing, reducing downtime significantly since only affected microservices need to be redeployed, instead of the entire system.
What is the canary deployment strategy, and how does it help achieve zero downtime?
-The canary deployment strategy involves gradually rolling out new versions of an application by directing a small percentage of traffic to the new version and monitoring its performance. If everything goes well, the traffic is gradually increased until 100% of users are on the new version. This method minimizes the risk of widespread issues and ensures zero downtime.
Why do some banks still experience downtime despite moving to microservices and modern deployment strategies?
-Even with microservices and canary deployments, some banks still experience downtime due to legacy systems, outdated infrastructure, or complex internal processes. These systems may not be able to handle the modern deployment strategies effectively, and in some cases, they still rely on older methods like database migrations, which require downtime.
How do legacy systems in banks contribute to the need for maintenance windows?
-Legacy systems in banks often lack the capabilities to perform zero-downtime database migrations or implement modern deployment strategies. When banks need to update their databases, they often have to stop the system and declare a maintenance window to avoid breaking the system, even if no visible changes are made to the application.
What role do database migrations play in the downtime of banking applications?
-Database migrations often require downtime because legacy database systems lack modern features that allow for smooth updates. When banks update their databases, such as adding columns or modifying user limits, they need to stop the application temporarily to ensure the changes are applied without disrupting service.
How do feature flags help reduce downtime in application deployments?
-Feature flags allow developers to toggle features on or off for users without requiring a full deployment. This flexibility can help reduce downtime, as it allows for testing new features in production without affecting all users. If an issue arises with a feature, it can be quickly disabled, minimizing the impact on the overall system.
What is the difference between monolithic and microservices architectures in terms of deployment complexity?
-Monolithic architecture bundles all application code into a single package, making updates more complex and time-consuming as any change requires redeploying the entire application. Microservices, on the other hand, break the application into smaller, independent services, which allows for targeted deployments and testing, making updates more manageable and reducing downtime.
Why do some banks still rely on blue-green deployments, and how does it help reduce downtime?
-Blue-green deployments involve maintaining two separate environments (blue and green) for the application. During deployment, the new version is deployed to the green environment, and traffic is switched from the blue environment to the green one. This method reduces downtime by allowing banks to test the new version in a live environment without affecting users until it's fully ready.
Outlines

هذا القسم متوفر فقط للمشتركين. يرجى الترقية للوصول إلى هذه الميزة.
قم بالترقية الآنMindmap

هذا القسم متوفر فقط للمشتركين. يرجى الترقية للوصول إلى هذه الميزة.
قم بالترقية الآنKeywords

هذا القسم متوفر فقط للمشتركين. يرجى الترقية للوصول إلى هذه الميزة.
قم بالترقية الآنHighlights

هذا القسم متوفر فقط للمشتركين. يرجى الترقية للوصول إلى هذه الميزة.
قم بالترقية الآنTranscripts

هذا القسم متوفر فقط للمشتركين. يرجى الترقية للوصول إلى هذه الميزة.
قم بالترقية الآنتصفح المزيد من مقاطع الفيديو ذات الصلة

Why we Use Fuse in Electrical Panel| Fuse vs Relay| Function of Fuse| Types of Fuse| Hindi

Watch this before learning Jenkins

What is Total Productive Maintenance | 8 Pillars of TPM | 6 Big Losses | Type of Maintenance

Balanced Scorecard: Uber Case Study

Redis vs Valkey Explained using AWS ElastiCache Serverless | Complete Demo

Что такое Java и как ее выучить?
5.0 / 5 (0 votes)