Cloud Applications Architecture

Cloud Applications Architecture

This course gives an overview on the topic of cloud application design. It covers basic principles of building cloud systems and additionally will discuss the primary building blocks offered by IaaS/PaaS/SaaS vendors (as well as methods and specifics of using them). During practice design sessions, we will build a virtual network, outline the application structure, and make designs to ensure quality attributes

Duration
25 hours
Course type
Online
Language
English
Duration
25 hours
Location
Online
Language
English
Code
ARC-016
Schedule and prices
-
€ 650 *
Training for 7-8 or more people? Customize trainings for your specific needs
Cloud Applications Architecture
Duration
25 hours
Location
Online
Language
English
Code
ARC-016
Schedule and prices
-
€ 650 *
Training for 7-8 or more people? Customize trainings for your specific needs

Description


Our training is a starting point for learning how to design cloud systems. Its main goal is to give you an introduction into the specifics and challenges of cloud and how to use the primary cloud toolset. We’ll start with the origin and types of cloud and an overview of the main technologies that enable cloud computing and then move on to designing cloud applications.

We’ll look at building virtual cloud networks, where we will discuss planning points of presence, organizing inbound and outbound traffic and content delivery. You’ll learn how to deploy the app’s functional elements – both server-based and serverless options. We will review capabilities of working with persistent data, selecting DBMS for various cases, and complete the introduction to cloud app building blocks (by solving integration tasks).

We’ll also be covering how to study and apply the main tactics for achieving system qualities such as scalability, performance, security, and fault tolerance. Automation is extremely important for efficient operation of cloud systems. IaaS/PaaS providers enable us to automatically provision and manage cloud resources, set up monitoring, and react to changes and failures in our application. We’ll discuss the most important automation scenarios.

certificate
After completing the course, a certificate
is issued on the Luxoft Training form

Objectives

  • Understand cloud computing, its economic foundations and technologies
  • Learn how to plan a high-level structure of cloud apps (network, computing resources, and storage), finding the balance between cost and implementation time
  • Learn how to build reliable, flexible, and scalable systems
  • Identifying potential bottlenecks and points of failure
  • Get prepared for further specialized and related trainings (high-load systems, Big Data, distributed DBs)

Target Audience

    Primary: 
    · Architects, System Designers 
    · Technical Leads / Senior Developers 
    · Cloud Project Managers 
    Optional: 
    · Business Analysts 
    · Analysts

Prerequisites

  • Fundamentals of application architecture
  • Basic knowledge in TCP/IP networks, virtualization principles

Roadmap

  1. Cloud computing fundamentals.
    What is cloud and where is it located? Technologies that enable cloud computing. Types of clouds. New service models: IaaS, PaaS, SaaS. Cloud economy.
  2. Principles of cloud application design.
    A minimal cloud app. Cloud application building blocks. Types of blocks: computing resources, storage, network infrastructure, managed services. Cloud-native applications. Multitenancy. Design challenges: communications, scalability, handling the state.
  3. Designing application boundaries.
    Types of traffic, virtual networks. Routing with and without virtual private cloud networks. Regions and points of presence. Handling external requests: dynamic and static content. Handling internal requests. Traffic payment models. Billing structure.
  4. Designing computations.
    “Classic” servers, “elastic” servers, application runtime environments, containerization, serverless computations. Main patterns: scalable monolith, composite application.
  5. Designing persistent data stores.
    Basic storage capabilities: block, object, and file storage. Key factors to assess data storage methods: data model, consistency, fault tolerance and availability, load. Available DB options: relational, key-value, column families, etc.
  6. Solving coordination and integration tasks.
    Challenges of remote communication. Synchronous and asynchronous communication. Brokers, queues, Kafka, API gateways, and Service Mesh.
  7. Automation.
    Overview of automation capabilities for design and operation. Metrics selection.
  8. Addressing system qualities.
    Network performance, traffic locality. Security, fault tolerance. Preventing cascading failures.

Methods for cloud application design.

The Twelve-factor App, Well-Architected Framework.

Schedule and prices
10.00-14.00
Code: ARC-016
Location: Online
Duration: 25 hours
Language: English
Time: 10.00-14.00
Trainer Oleksandr Holota
€ 650 *
Still have questions?
Connect with us