Modern software requires the use of modern application architectures. Modern application architectures require moving away from monolithic systems and using service-based architectures.
Monolith applications are extremely hard to scale, both from a traffic scaling standpoint and from the standpoint of your ability to scale the size of your organization to work on the application. The larger the monolith, the slower it is to make changes to the application, the fewer the people who can work on it and manage it effectively, and the greater the likelihood that traffic variations and growth will negatively impact availability.
The General Idea
Among other strategies, service-oriented architectures address these issues by offering greater flexibility in scaling based on traffic needs well as offering a scalable platform to enable larger development organizations to operate on the application, making it possible for applications themselves to become larger and more complex.
Modern architecture principles such as service-based architectures aid scalability as well as availability. Additionally, modern applications can improve scalability and reduce downtime by implementing best practices such as risk management, internal service level agreements, and the use of service levels. All of this with the goal of enhancing customer satisfaction.
When applications grow, they become more complex and fragile, as well as they need to handle larger volumes of traffic. These problems lead to a death spiral which leads to brownouts, blackouts and other service quality issues. Modern applications use modern principles that reduce the brittleness of complexity and increase reliability as the application grows.
Application architecture at Ory
Today, I’m working with the team at Ory to help them architect the next generation identity service.
The Ory team understands these principles, which is why the Ory Network product is being designed from the ground up as a modern, service-based architecture. As they build the Ory Network, they are utilizing modern development techniques, and modern development and operation processes and procedures.
This allows them to build a highly scalable, highly available, identity management service for everyone.
Continue reading
If you are interested in learning more about modern application architecture techniques to build a more scalable, highly available application, then you may be interested in checking out my book, published by O’Reilly Media, titled Architecting for Scale.
If you’d like to learn more about me and my background in building modern application architectures, check out some of my articles and presentations on these topics.
If you would like to engage me to help you solve some of your modern architecture concerns, please reach out to me via my consulting and advisory company, Atchison Technology LLC.