Netflix deploys 100x a day on a complex distributed architecture2
Stage 6 is about building a new application architecture—and it starts with thinking through the pros and cons of microservices and monolithic architectures. Many people might assume a microservices architecture is the clear choice. But is it really? No, not necessarily. The important thing is to step back and evaluate what fits your desired business outcomes.
Engineers at Etsy and Netflix had an enjoyable Twitter fight over the necessity of microservices for continuous deployment and developer autonomy. The engineers at Etsy pointed out that they had small, functionality-based, agile development teams and extremely rapid deployments (about 60 a day1) while still running a monolithic application. They found a system which worked for them and their culture. Meanwhile, Netflix found that what works best for them is a microservices architecture.
Netflix deploys 100x a day on a complex distributed architecture2
Basically, don’t worry about what large and innovative companies like Netflix are doing. What’s important is that you focus on developing an architecture that suits your own unique goals. Just know that at some point, digital transformation will affect your current apps and architecture. If you have an existing monolithic app, there are two related ways to begin addressing that technical debt:
Neither method requires a full commitment to microservices. Key Bank, a Red Hat customer, needed to reduce release times from quarterly to weekly, and it accomplished this while still having a monolithic app.3 And while another bank like Barclays might share the same goal of increasing market response times, it can achieve that goal using a completely different architecture.
We need to deliver products to market quicker than ever and be more responsive to market trends. We want to become the bank of the future.
Simon Cashmore, Head of PaaS Middleware Engineering, Barclays
There are three prominent application architectures today, based on the relationships between the services: monoliths (tightly coupled), microservices (decoupled), and (though falling out of favor) service-oriented architectures (loosely coupled).
The question for an organization isn’t, “can we replace our monolith with microservices?” The question is what is our strategic goal and what do we need to do to get there? Before you start planning your architecture, you need to have a very clear understanding of your strategic priorities and goals. Ask yourself:
Once you can answer these questions, then it’s time to compare architectures and see which one best aligns with your culture, priorities, and goals. You can do that by downloading the e-book, “Teaching an elephant to dance,” which goes into greater detail about the pros and cons of the different system architectures.
"Teaching an elephant to dance"