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?

© 2020 Northscaler