万本电子书0元读

万本电子书0元读

顶部广告

Architecting Cloud Native Applications电子书

售       价:¥

0人正在读 | 0人评论 9.8

作       者:Kamal Arora

出  版  社:Packt Publishing

出版时间:2019-04-16

字       数:80.4万

所属分类: 进口书 > 外文原版书 > 电脑/网络

温馨提示:数字商品不支持退换货,不提供源文件,不支持导出打印

为你推荐

  • 读书简介
  • 目录
  • 累计评论(0条)
  • 读书简介
  • 目录
  • 累计评论(0条)
Apply cloud native patterns and practices to deliver responsive, resilient, elastic, and message-driven systems with confidence Key Features * Discover best practices for applying cloud native patterns to your cloud applications * Explore ways to effectively plan resources and technology stacks for high security and fault tolerance * Gain insight into core architectural principles using real-world examples Book Description Cloud computing has proven to be the most revolutionary IT development since virtualization. Cloud native architectures give you the benefit of more flexibility over legacy systems. This Learning Path teaches you everything you need to know for designing industry-grade cloud applications and efficiently migrating your business to the cloud. It begins by exploring the basic patterns that turn your database inside out to achieve massive scalability. You’ll learn how to develop cloud native architectures using microservices and serverless computing as your design principles. Then, you’ll explore ways to continuously deliver production code by implementing continuous observability in production. In the concluding chapters, you’ll learn about various public cloud architectures ranging from AWS and Azure to the Google Cloud Platform, and understand the future trends and expectations of cloud providers. By the end of this Learning Path, you’ll have learned the techniques to adopt cloud native architectures that meet your business requirements. This Learning Path includes content from the following Packt products: * Cloud Native Development Patterns and Best Practices by John Gilbert * Cloud Native Architectures by Erik Farr et al. What you will learn * Understand the difference between cloud native and traditional architecture * Automate security controls and configuration management * Minimize risk by evolving your monolithic systems into cloud native applications * Explore the aspects of migration, when and why to use it * Apply modern delivery and testing methods to continuously deliver production code * Enable massive scaling by turning your database inside out Who this book is for This Learning Path is designed for developers who want to progress into building cloud native systems and are keen to learn the patterns involved. Software architects, who are keen on designing scalable and highly available cloud native applications, will also find this Learning Path very useful. To easily grasp these concepts, you will need basic knowledge of programming and cloud computing.
目录展开

About Packt

Why subscribe?

Packt.com

Contributors

About the authors

Packt is searching for authors like you

Preface

Who this book is for

What this book covers

To get the most out of this book

Download the example code files

Conventions used

Get in touch

Reviews

Understanding Cloud Native Concepts

Establishing the context

Rewiring your software engineering brain

Defining cloud-native

Powered by disposable infrastructure

Composed of bounded, isolated components

Scales globally

Embraces disposable architecture

Leverages value-added cloud services

Welcomes polyglot cloud

Empowers self-sufficient, full-stack teams

Drives cultural change

Summary

The Anatomy of Cloud Native Systems

The cloud is the database

Reactive Manifesto

Turning the database inside out

Bulkheads

Event streaming

Polyglot Persistence

Cloud native database

Cloud native patterns

Foundation patterns

Boundary patterns

Control patterns

Bounded isolated components

Functional boundaries

Bounded context

Component patterns

Data life cycle

Single responsibility

Technical isolation

Regions and availability zones

Components

Data

Accounts

Providers

Summary

Foundation Patterns

Cloud-Native Databases Per Component

Context, problem, and forces

Solution

Resulting context

Example – cloud-native database trigger

Event Streaming

Context, problem, and forces

Solution

Resulting context

Example – stream, producer, and consumer

Event Sourcing

Context, problem, and forces

Solution

Event-First Variant

Database-First Variant

Resulting context

Example – database-first event sourcing

Data Lake

Context, problem, and forces

Solution

Resulting context

Example – Data Lake consumer component

Stream Circuit Breaker

Context, problem, and forces

Solution

Resulting context

Example – stream processor flow control

Trilateral API

Context, problem, and forces

Solution

Resulting context

Example – asynchronous API documentation

Example – component anatomy

Summary

Boundary Patterns

API Gateway

Context, problem, and forces

Solution

Resulting context

Example – CRUD service

Command Query Responsibility Segregation (CQRS)

Context, problem, and forces

Solution

Resulting context

Example – inverse oplock

Example – event sourced join

Offline-first database

Context, problem, and forces

Solution

Resulting context

Example – offline-first counter

Backend For Frontend

Context, problem, and forces

Solution

Resulting context

Example – Author BFF

Example – Worker BFF

Example – Customer BFF

Example – Manager BFF

External Service Gateway

Context, problem, and forces

Solution

Outbound communication

Inbound communication

Resulting context

Example – user authentication integration

Summary

Control Patterns

Event collaboration

Context, problem, and forces

Solution

Resulting Context

Example – order collaboration

Event orchestration

Context, problem, and forces

Solution

Resulting context

Example – order orchestration

Saga

Context, problem, and forces

Solution

Resulting context

Example – order collaboration with compensation

Example – order orchestration with compensation

Summary

Deployment

Decoupling deployment from release

Multi-level roadmaps

Release roadmaps

Story mapping

Deployment roadmaps

Task branch workflow

Deployment pipeline

Modern CI/CD

npm

Infrastructure as Code services

Serverless Framework

Zero-downtime deployment

Blue-green deployment

Canary deployment

Multi-regional deployment

Feature flags

Versioning

Synchronous API

Database schema

Asynchronous API

Micro-frontend

Trilateral API per container

Summary

Testing

Shifting testing to the left

Test engineering

Isolated testing

Unit testing

Component testing

Transitive testing

Integration testing

Contract testing

End-to-end testing

Manual testing

Example – end-to-end relay

Submit order leg

Order submitted leg

Summary

Monitoring

Shifting testing to the right

Key performance indicators

Real and synthetic traffic

Real-user monitoring

Synthetic transaction monitoring

Observability

Measurements

Work metrics

Resource metrics

Events

Telemetry

Alerting

Focus on recovery

Performance

Summary

Security

Shared responsibility model

Security by design

Accounts as code

Defense in depth

Edge layer

Component layer

Data layer

Encryption

Data in transit

Data at rest

Envelope encryption

Tokenization

Domain events

Disaster recovery

Application security

Federated identity management

API gateway

JWT assertion and filter patterns

Regulatory compliance

Summary

Cloud Native Application Design

From monolithic to microservices and everything in between

System design patterns

Monolithic

Client server

Services

Service-oriented architectures (SOAs)

Microservices

Why services matter

Containers and serverless

Containers and orchestration

Registries

Orchestration

Container usage patterns

Microservices with containers

Hybrid and migration of application deployment

Container anti patterns

Serverless

Scaling

Serverless usage patterns

Web and backend application processing

Data and batch processing

System automation

Serverless anti patterns and concerns

Development frameworks and approaches

Summary

How to Choose Technology Stacks

Cloud technology ecosystems

Public cloud providers

Independent software vendor (ISV) and technology partners

Customer managed products

Software as a Service

Consulting partners

Niche SI partners

Regional SI partners

Global SI partners

Procurement in the cloud

Cloud marketplaces

Marketplace and service catalogs

Cloud marketplace anti-patterns

Licensing considerations

Cloud vendor pricing models

Example - AWS Lambda pricing

Open source

Cloud services

Cloud services – vendor versus self-managed

Self-managed approach

Managed cloud services

Vender lock-in

Operating systems

Windows versus Linux

Do operating systems really matter any longer?

Summary

Optimizing Cost

Before the cloud

Cloud cost view

Cloud economics

CapEx versus OpEx

Cost monitoring

Tagging best practices

Cost optimization

Compute optimization

Storage optimization

Serverless implications

Cloud native toolkit

Cloudability

AWS Trusted Advisor

Azure Cost Management

Summary

Scalable and Available

Introduction to the hyper-scale cloud infrastructure

Always-on architectures

Always-on – key architectural elements

Network redundancy

Redundant core services

Monitoring

Infrastructure as Code

Immutable deployments

Self-healing infrastructures

Core tenets

Service-oriented architectures and microservices

Cloud-native toolkit

Simian Army

Docker

Kubernetes

Terraform

OpenFaaS (Function as a Service)

Envoy

Linkerd

Zipkin

Ansible

Apache Mesos

Saltstack

Vagrant

OpenStack projects

Summary

Amazon Web Services

AWS' cloud native services (CNMM Axis-1)

Introduction

AWS platform – differentiators

KRADL services

AWS native security services

Machine Learning/Artificial Intelligence

Object storage (S3, Glacier, ecosystem)

Application centric design (CNMM Axis-2)

Serverless microservice

API trigger

Function

Service

Serverless microservice – sample walkthrough

AWS Lambda function creation and configuration

Configuring the Amazon API Gateway

Setting up a Weather Service Account

Testing the service

Deploying the API

Serverless microservice automation using AWS SAM

SAM YAML template

API definition Swagger file

AWS Lambda code

AWS SAM usage

Automation in AWS (CNMM Axis-3)

Infrastructure as code

CI/CD for applications on Amazon EC2, Amazon Elastic Beanstalk

CI/CD for serverless applications

CI/CD for Amazon ECS (Docker containers)

CI/CD for security services – DevSecOps

Patterns for moving off monolithic application architectures to AWS native architectures

Summary

Microsoft Azure

Azure's Cloud Native Services (CNMM Axis-1)

Microsoft Azure platform – differentiators

Azure IoT

Azure Cosmos DB

Azure machine learning studio

Visual Studio Team Services

Office 365

Application Centric Design (CNMM Axis-2)

Serverless microservice

Serverless microservice – walkthrough

Browser-based testing

Command-line-based testing

Automation in Azure (CNMM Axis-3)

Infrastructure as code

CI/CD for serverless applications

CI/CD for Azure container service (Docker containers)

Patterns for moving from monolithic application architectures to Azure native architectures

Summary

Google Cloud Platform

GCP's cloud-native services (CNMM Axis-1)

Introduction

Google Cloud Platform – differentiators

Cloud AI

Kubernetes Engine

G Suite

Application Centric Design (CNMM Axis-2)

Serverless microservice

Serverless microservice – sample walkthrough

Automation in the Google Cloud Platform (CNMM Axis-3)

Infrastructure as code

CI/CD for serverless microservices

CI/CD for container-based applications

Patterns for moving off from monolithic application architectures to Google cloud native architectures

Summary

What's Next? Cloud Native Application Architecture Trends

Predictions for the next three years – what to expect in terms of cloud native architecture evolution

Open source frameworks and platforms

Increased abstraction from infrastructure services

Systems will become smarter and AI/ML driven, starting with DevOps and moving on to NoOps

Developers will natively develop new applications in the cloud, instead of first developing locally

Voice, chatbots, and AR/VR-based interaction models will become prevalent, mainly powered by the cloud

Cloud native architectures will expand beyond data centers to "things"

Data will continue to be new "oil"

The future of enterprises on the cloud

New IT roles

Summary

Other Books You May Enjoy

Leave a review - let other readers know what you think

累计评论(0条) 0个书友正在讨论这本书 发表评论

发表评论

发表评论,分享你的想法吧!

买过这本书的人还买过

读了这本书的人还在读

回顶部