Modern Scaleable Architecture
Duration (in days):
1

Description:
We are on the verge of seeing a major change in the overall structure of software applications. This architecture stands up to demands such as high and elasticscale (in millions of events per second), near perfect isolation of features, higly testable, functional, etc.
At Northscaler, we have developed a recipee and a set of principles which we use when helping our customers.
In this course, we share these principles in a way where everyone from CEO and down to the individual contributors can participate.
Objectives:
Learn some of the architectural principles and goals typical in a modern architecture
Understand how to achieve elastic and high scale
Understand why functional approaches are becoming popular
Understand the CAP theorem and why it is important
Undertand the cloud, on-premise, and edge deployment models and how to build monadic software components
Understand the integrtation story of modern architrectures
Prerequisites:
We are on the verge of seeing a major change in the overall structure of software applications. This architecture stands up to demands such as high and elasticscale (in millions of events per second), near perfect isolation of features, higly testable, functional, etc.
At Northscaler, we have developed a recipee and a set of principles which we use when helping our customers.
In this course, we share these principles in a way where everyone from CEO and down to the individual contributors can participate.
Audience
Software developers, software architects, and managers of software organizations.
Outline
Challenges and Context
What are some common goals of software architecture?
Modern challenges
What typically fails?
Some architectural patterns
Scalability
Signs of scalability challenges
Amdah's law
Gunter's law
CAP theorem
Lessons from functional programming
Best practices
Elasticity
What is elasticity?
Why be elastic?
Options for scale
Cost of cloud, on-premise, and edge
Moving compoents around between on-premise, cloud, and edge
Devops challenges and solutions
Elasticity triggers
Best pratices
Availability
What is availability?
Why availability?
How to achieve availability?
Handling of external attacks
Working around predictable internal failures
Handle unpredictable internal failures
Importance of testing failures
How to test for failures?
Best practices
Other Architectural Goals
Testibility
Performance
Security
Maintainabliity
Extensibility
Maintainability
Architectural Template
One architectural template
What are the variations?
How to evaluate the options?