وبلاگ بلیان

CLOUD NATIVE ARCHITECTURE AND DESIGN : a handbook for modern day architecture and design with... enterprise-grade examples

جلد کتاب CLOUD NATIVE ARCHITECTURE AND DESIGN : a handbook for modern day architecture and design with... enterprise-grade examples

معرفی کتاب «CLOUD NATIVE ARCHITECTURE AND DESIGN : a handbook for modern day architecture and design with... enterprise-grade examples» نوشتهٔ Eric Freeman، Elisabeth Robson و Shivakumar R. Goniwada، منتشرشده توسط نشر Apress : Imprint: Apress در سال 2021. این کتاب در فرمت pdf، زبان انگلیسی ارائه شده است.

کتاب «معماری و طراحی بومی ابری» (Cloud Native Architecture and Design) نوشتهٔ شیواکومار آر. گونی‌وادا، راهنمایی جامع و کاربردی برای درک مفاهیم بنیادین و الگوهای مدرن توسعهٔ نرم‌افزار در فضای ابری است. این کتاب با ارائهٔ مثال‌های فراوان از سطح سازمانی، به معماران و توسعه‌دهندگان کمک می‌کند تا سیستم‌هایی مقیاس‌پذیر، انعطاف‌پذیر و کارآمد بر پایهٔ اصول بومی ابری طراحی و پیاده‌سازی کنند.

دربارهٔ کتاب معماری و طراحی بومی ابری —

«معماری و طراحی بومی ابری» سفری گام‌به‌گام از اصول اولیه تا پیاده‌سازی پیشرفتهٔ سیستم‌های بومی ابری را برای خواننده ترسیم می‌کند. کتاب با تبیین مفاهیم پایه و خدمات ابری آغاز شده و سپس به معرفی اصول و الگوهای معماری بومی ابری می‌پردازد. یکی از نقاط قوت اصلی این اثر، توجه ویژه به فرایند مدرن‌سازی سیستم‌های قدیمی (مانند یکپارچه‌سازی) و ارائهٔ تکنیک‌های ارزیابی سطح سازمانی برای تشخیص سیستم‌های قابل مهاجرت به فضای ابری است. نویسنده با درک این نکته که طراحی معماری بومی ابری بدون بهره‌گیری از اصول مدرن مهندسی نرم‌افزار، فرهنگ خودکارسازی و نوآوری میسر نیست، بخش قابل‌توجهی از کتاب را به این مباحث اختصاص داده است. از مباحث مربوط به کانتینری‌سازی و ارکستراسیون گرفته تا مجازی‌سازی در ابرهای عمومی، خصوصی و ترکیبی، همگی در این کتاب پوشش داده شده‌اند. ساختار کتاب در هفت بخش اصلی سازماندهی شده که به ترتیب به مفاهیم پایه، عناصر معماری (مانند معماری میکروسرویس، رویدادمحور و سرورلس)، مدرن‌سازی سیستم‌های سازمانی، مهندسی نرم‌افزار بومی ابری، زیرساخت، عملیات و روندهای نوظهور می‌پردازد.

دربارهٔ نویسنده

شیواکومار آر. گونی‌وادا (Shivakumar R. Goniwada) نویسندهٔ کتاب، یک مخترع و رهبر فناوری شناخته‌شده با بیش از ۲۶ سال تجربه در زمینهٔ معماری سیستم‌های پیچیده، تحلیل داده و رویدادمحور است. او هم‌اکنون به عنوان معمار ارشد سازمانی در شرکت مشاوره‌ای معتبر اکسنچر (Accenture) فعالیت می‌کند و تیمی از معماران ارشد فناوری و ابر را رهبری می‌نماید. گونی‌وادا تاکنون موفق به ثبت ده اختراع نرم‌افزاری در حوزه‌هایی مانند رایانش ابری، معماری چندزبانه و مهندسی نرم‌افزار شده است و سابقهٔ مدیریت پروژه‌های پیچیده در صنایع و مناطق جغرافیایی گوناگون را در کارنامه دارد. علاوه بر این، او به عنوان داور فنی کتاب‌های دیگری در زمینهٔ مهندسی و عملیات بومی ابری نیز فعالیت داشته است.

چرا باید معماری و طراحی بومی ابری را بخوانید؟

  • پوشش جامع از پایه تا پیشرفته: کتاب با زبانی روشن و ساختاری منظم، شما را از مفاهیم ابتدایی بومی ابری به مباحث تخصصی‌تر مانند طراحی الگوها و مدرن‌سازی سیستم‌ها هدایت می‌کند.
  • ارائهٔ تکنیک‌های ارزیابی و مهاجرت سازمانی: یکی از چالش‌های اصلی سازمان‌ها، تصمیم‌گیری دربارهٔ مهاجرت به ابر است. این کتاب ابزارها و تکنیک‌هایی را برای ارزیابی سیستم‌ها و انتخاب استراتژی مناسب ارائه می‌دهد.
  • تأکید بر فرهنگ خودکارسازی و نوآوری: کتاب فراتر از مباحث فنی، به اصول مهندسی نرم‌افزار و فرهنگ لازم برای پذیرش موفقیت‌آمیز معماری بومی ابری می‌پردازد.
  • پوشش مباحث روز از جمله هوش مصنوعی: این کتاب به کاربرد تکنیک‌های هوش مصنوعی در خودکارسازی و مدیریت سیستم‌های بومی ابری اشاره کرده و رویکردهای نوین مانند «عملیات صفر» را معرفی می‌کند.
  • تمرکز بر زیرساخت و عملیات: بخش‌های پایانی کتاب به جزئیات اجرایی مانند کانتینری‌سازی، زیرساخت خودکار و مشاهشت‌پذیری اختصاص دارد که برای اجرای کارآمد برنامه‌ها حیاتی است.

این کتاب برای چه کسانی مناسب است؟

این کتاب منبعی ارزشمند برای طیف وسیعی از فعالان حوزهٔ فناوری اطلاعات به شمار می‌رود. معماران نرم‌افزار، مدیران پروژه، توسعه‌دهندگان و مهندسانی که به دنبال درک عمیق و عملی از معماری بومی ابری هستند، مخاطبان اصلی این کتاب را تشکیل می‌دهند. همچنین، دانشجویانی که قصد دارند دانش خود را در این حوزهٔ رو به رشد ارتقا دهند، می‌توانند از محتوای غنی و ساختار آموزشی کتاب بهره‌مند شوند. با توجه به پوشش مباحثی از اصول اولیه تا مفاهیم پیشرفته، این کتاب برای افراد با سطوح مختلف تجربه، از مبتدیان کنجکاو تا متخصصان باتجربه، قابل استفاده است.

سوالات متداول

آیا این کتاب صرفاً به مباحث تئوریک می‌پردازد یا مثال‌های عملی نیز دارد؟

کتاب «معماری و طراحی بومی ابری» بر ارائهٔ جزئیات عمیق و مثال‌های متعدد تأکید دارد. نویسنده با هدف ایجاد درکی کاربردی، الگوها، ابزارها و فرایندهای مختلف را همراه با مثال‌های عینی از سطح سازمانی توضیح می‌دهد که به خواننده در پیاده‌سازی مفاهیم در دنیای واقعی کمک می‌کند.

آیا این کتاب به استراتژی‌های مدرن‌سازی سیستم‌های یکپارچه قدیمی نیز پرداخته است؟

بله، یکی از بخش‌های کلیدی کتاب به موضوع مدرن‌سازی سیستم‌های یکپارچه (Monolithic) به معماری بومی ابری اختصاص دارد. این بخش شامل تکنیک‌های ارزیابی سطح سازمانی، تحلیل قابلیت مهاجرت سیستم‌ها و ارائهٔ راهکارهای گام‌به‌گام برای این انتقال است.

آیا برای درک این کتاب به پیش‌زمینهٔ خاصی نیاز است؟

اگرچه کتاب از اصول پایه شروع می‌کند، اما داشتن آشنایی کلی با مفاهیم رایانش ابری و توسعهٔ نرم‌افزار می‌تواند به درک بهتر مطالب کمک کند. با این حال، ساختار گام‌به‌گام و پوشش جامع مباحث از سطوح مقدماتی تا پیشرفته، آن را برای مخاطبان با سطوح مختلف مهارت مناسب ساخته است.

Build enterprise-grade cloud-native systems and learn all about cloud-native architecture and design. This book provides extensive in-depth details of patterns, tools, techniques, and processes with plenty of examples. Cloud Native Architecture and Design begins by explaining the fundamentals of cloud-native architecture and services, what cloud principles and patterns to use, and details of designing a cloud-native element. The book progresses to cover the details of how IT systems can modernize to embrace cloud-native architecture, and also provides details of various enterprise assessment techniques to decide what systems can move and cannot move into the cloud. Architecting and designing a cloud-native system isn’t possible without modernized software engineering principles, the culture of automation, and the culture of innovation. As such, this book covers the details of cloud-native software engineering methodologies, and process, and how to adopt an automated governance approach across enterprises with the adoption of artificial intelligence. Finally, you need your cloud-native applications to run efficiently; this section covers the details of containerization, orchestration, and virtualization in the public, private, and hybrid clouds. After reading this book, you will have familiarity with the many concepts related to cloud-native and understand how to design and develop a successful cloud-native application. Technologies and practices may change over time, but the book lays a strong foundation on which you can build successful cloud-native systems. What You Will Learn Discover cloud-native principles and patterns, and how you can leverage them to solve your business problems Gain the techniques and concepts you need to adapt to design a cloud-native application Use assessment techniques and tools for IT modernization Apply cloud-native engineering principles to the culture of automation and culture of innovation Harness the techniques and tools to run your cloud-native applications and automate infrastructure Operate your cloud-native applications by using AI techniques and zero operation techniques Who This Book Is For Software architects, leaders, developers, engineers, project managers, and students. Table of Contents About the Author About the Technical Reviewer Acknowledgments Introduction Part I: The Cloud Native Journey, Principles, and Patterns Chapter 1: Introduction to Cloud Native Architecture Introduction to Cloud Native Cloud Adoption Across Industries Reducing Costs Adopting the Cloud Native Mindset What Is Cloud Native? Cloud Native Maturity Model Cloud Enablement Wave Cloud Native Transformation Wave Scalability and Flexibility Advantage Cloud Native Culture and Innovation Wave Blockchain as a Service Digital Twin Zero Trust Architecture 5G Quantum Computing Elements of Cloud Native Computing Microservices Architecture Serverless Architecture Event-Driven Architecture Cloud Computing Containers Agile Development DevSecOps How Is Cloud Native Different Than Cloud-Enabled? Cloud Native Journey Start with Lift and Shift Re-engineer Migration Benefits of Cloud Native Cloud Native Organization and Culture How Is Cloud Native Architecture Embraced Across Industries? Migrate Accelerate Scale and Innovate What Is a Software Architect’s Role in Cloud Native? Summary Chapter 2: Cloud Native Services Evolution of Infrastructure Services Mainframe Services Minicomputer Services Personal Computing Service Client-Server Service Enterprise Computing Service Cloud and Mobile Computing Services IT Infrastructure Laws and Prediction Moore’s Law The Laws of Mass Digital Storage Metcalfe’s Law Communication Cost and Internet Evolution of Servers Bare-Metal Servers Virtual Machine Revolution Adoption of Virtual Machines Virtual Machines in the Cloud Container Revolution Understanding Cloud Services Infrastructure as a Service Platform as a Service PaaS Taxonomy PaaS Architecture Styles PaaS Deployment Model Software as a Service SaaS Limitations Architectural Considerations: How to Decide on a Custom vs. SaaS Platform Cloud Computing Deployment Models Public Cloud Private Cloud or On-Premises Cloud Community Cloud Hybrid Cloud Services Summary Chapter 3: Cloud Native Architecture Principles What Are Architecture Principles? Cloud Native Design Principles API First Principle Monolithic Architecture Principle Polylithic Architecture Principle Applying the Polylithic Principle in Architecture Properties of Polylithic Principles Polyglot Persistence Principle Applying the Polyglot Persistence Principle in Architecture Modeled with Business Domain Principle Consumer First Principle Decentralize Everything Principle Culture of Automation Principle Always Be Architecting Principle Interoperability Principle Digital Decoupling Principle Single Source of Truth Principle Evolutionary Design Principle Cloud Native Runtime Principles Isolate Failure Principle (IFP) Deploy Independently Principle Be Smart with State Principle Location-Independent Principle Design for Failure Principle Security Principles Defense in Depth Principle Security by Design Principle SQL Injection Cross-Site Scripting (XSS) Software Engineering Principle Products Not Projects Principle Shift-Left Principle Shift-Left Security Shift-Left Performance Container Principles Single Concern Principle High Observability Principle Lifecycle Conformance Principle Image Immutability Principle Process Disposability Principle (PDP) Self-Containment Principle Runtime Confinement Principle Principles of Orthogonal Cohesion Types of Cohesion Function Cohesion Sequence Cohesion Communication Cohesion Procedural Cohesion Temporal Cohesion Logical Cohesion Coincidental Cohesion Applying High Cohesion to Software Design Coupling Types of Coupling No Coupling Message Coupling Data Coupling Stamp Coupling (Data-Structured Coupling) Control Coupling External Coupling Common Coupling (Global Coupling) Content Coupling (Pathological Coupling) Law of Demeter (LoD) or Principle of Least Knowledge Applying Loose Coupling to Software Design Software Quality Principles KISS Principle Applying KISS to Software Design Don’t Repeat Yourself Duplication Is Waste The DRY Principle in Polylithic and Polyglot Architecture How does the DRY principle reduce maintenance costs? Isolate What do we mean by isolation? Isolation in Cloud Native Applications Applying Isolation to Software Design Separation of Concern Applying SoC to Software Design Use Layering Layering in Traditional Application Layering in Cloud Native Application Applying Layering to Software Design Information Hiding Why Information Hiding? Applying Information Hiding to Software Design You Aren’t Gonna Need It Idea of YAGNI How to Decide What You Need SOLID Design Principles Single Responsibility Principle Applying Single Responsibility to Microservice Design Open-Closed Principle Applying Open-Closed to Microservices Liskov Substitution Principle Applying Liskov Substitution to Microservices Design Interface Segregation Principle Dependency Inversion Principle Summary Chapter 4: Cloud Native Architecture and Design Patterns Evolution of Design Patterns What Are Software Patterns? Architecture Style, Architecture Pattern, and Design Pattern Anti-pattern Cloud Native Data Management Pattern for Microservices Event Sourcing Pattern Stream Event Store Command and Query Responsibility Segregation Pattern Application Layer Command and Query Command and Query in the Database Data Partitioning Pattern Horizontal Partitioning or Sharding Range Based or Interval Partitioning/Sharding Hash Partitioning/Sharding List Partition Round-Robin Partitioning Vertical Partitioning Data Replication Leader-Based or Leader-Followers Replication How are the leaders selected? Quorum-Based Replication Cloud Native API Management Patterns for Microservices Idempotent Service Operation Optimistic Concurrency Control in API Circuit Breaker Service Discovery Client-Side Discovery Pattern Server-Side Discovery Pattern Service Versioning URI Versioning Header Versioning Cloud Native Event-Driven Patterns for Microservices Asynchronous Nonblocking I/O What is synchronous and asynchronous messaging? Stream Processing Cloud Native Design Pattern for Microservices Mediator Orchestration Strangler Pattern Bulkhead Pattern How does the bulkhead pattern work? Anti-corruption Pattern Cloud Native Runtime Pattern for Microservices Fail Fast Retry Sidecar Init Containers Saga Pattern Event Driven and Choreography Orchestrator-Based Saga Pattern Summary Part II: Elements of Cloud Native Architecture and Design Chapter 5: Microservices Architecture and Design Evolution of Microservices What Is a Microservices Architecture? Characteristics of Microservices Organized Around Business Capabilities Autonomous Smart Endpoints and Dumb Pipes What Is a Service Mesh? Smart Endpoints and Dumb Pipes with Service Meshes What Is an Event Mesh? Resilience in Microservices Resilience Capabilities How to Build Resilient Microservices? Elasticity in Microservices Distributed State How to Handle Distributed State with Asynchronous microservices Independently Deployable Decentralization Decentralized Governance Decentralized Data Automation Containerization Design for Failure How Do You Design a Microservice for Failure and Stability? Living Continuous Design Self-Healing Hexagonal Architecture Enterprise Microservices Examples Case Study: Trade Finance What Is Trade Finance? Trade Finance Ecosystem Trade Finance Functional Architecture Case Study: Collateral Management Collateral Management Functional Architecture Collateral Management Architecture Microservices and User Interface: Micro Front End Routing Composition Communication Pros and Cons of Micro Front Ends Microservice Architecture in Artificial Intelligence AI Subcategories Microservices Vertical Components: Speech AI Summary Chapter 6: Event-Driven Architecture Evolution of Event-Driven Architecture Tightly Coupled World to Loosely Coupled World Message Broker World to Event World Event Business Events Technical Events Processing an Event Event Handling in Domain Context Event Governance What Is Event-Driven Architecture? How Does Event-Driven Architecture Work? Event-Driven Topologies Mediator Topology Broker Topology Choice of Topology Characteristics of Event-Driven Architecture Event-Driven Messaging Models Event Messaging Event Streaming Event Processing Styles Simple Event Processing Event Stream Processing Complex Event Processing Event-Driven Architecture Maturity Model Decoupling Use Case by Using Event-Driven Architecture Make Data Accessible How to Get Events and Make Data Accessible? Where to Store Events? How to Get Data? CDC Real-Time Interactivity How to Use Existing Message Queues with Event Streams? Transaction Management in Event-Driven Microservices Two-Phase Commit in Cloud Native Services Transactions with Events Event-Driven Microservices Interaction Interaction Between Microservices Service Mesh Service Mesh Implementation Advantages and Disadvantages of Service Meshes Event Mesh Characteristics of Event Mesh Event Mesh Capabilities How Do Event Meshes Work? Event Mesh in a Cluster of Brokers Event Mesh’s Control Plane Box- and Port-Style Event-Driven Architecture Characteristics of Box- and Port-Style Architecture DevOps for Events Event Security Field-Level Encryption Consideration Cloud Events Summary Chapter 7: Serverless Architecture Evolution of Serverless What Is Serverless Computing? Essential Components of Serverless Serverless and Event-Driven Computing Serverless Design Principles Stateless Functions Push-Based and Event-Driven Pipelines Config: Store Config in the Environment Backing Services: Treat Backing Services as Attached Resources Concurrency: Scaling Out via the Process Model Disposability: Maximize Robustness with Quick Startup and Shutdown Key Considerations for Serverless Computing Why Use Serverless Architecture? Best Practices of Serverless Architecture Types of Serverless Architecture Function as a Service AWS Lambda Reference Architecture Ecommerce Reference Architecture Best Practices of Lambda Azure Functions Reference Architecture Best Practices of Azure Functions Google Cloud Functions Reference Architecture Best Practices of Google Function FaaS Platform Evaluation Criteria Backend as a Service or Mobile Backend as a Service Pros and Cons of BaaS Function Deployment When to Use Serverless Advantages of Serverless Architecture Reduced Operational Cost Optimized Resource Utilization Faster Time to Market Ability to Focus on User Experience Fits with Microservices The Drawbacks of Serverless Architecture Standardization Operations Management Tooling Support Security Long-Term Tasks Future of Serverless Summary Chapter 8: Cloud Native Data Architecture Rethinking Data in a Cloud Native World Cloud Native Data Persistence Layer Cloud Native Data Characteristics How to Select a Data Store Objects, Files, and Blocks Databases Relational Database Key-Value Document Database Wide-Column Database Time-Series Database Graph Database Event Store Database Search Engine Database Data Replication Physical Database Replication Logical Database Replication Full Data Refresh Partial Data Refresh Change Data Capture Log-Based CDC Extract, Transfer, and Load Extraction Transform Load Decoupling Big Data Management from Distributed Data Meshes Step 1: Self-Service Data Infrastructure as a Platform Step 2: Data as a Product Step 3: Data Infrastructure as a Platform Step 4: Domain-Oriented Decentralized Data Ownership and Architecture Step 5: Data Governance Data Processing with Real-Time Streaming for Analytics Lambda Architecture How Does the Lambda Architecture Work? Kappa Architecture Microservices in Data Processing with Real-Time Streaming for Analytics Mobile Platform Database Intelligent Data Governance and Compliance in the Cloud Native World Why Data Governance? What Is Data Governance? Governance Framework Change Management Intelligent Tooling Operating Model Decentralization Secure Summary Chapter 9: Designing for “-ilities” Why Do You Need “-ilities”? Partial List of “-ilities” Designing for Security Defense in Depth The CIA Triad Policy as Code Zero-Trust Security Decentralized Identity Validating Input Design for Threats Naive Password Complexity Requirements Compliance as Code Shift-Left Security Single Pane of Glass for Audit Homomorphic Encryption Fail Securely Secure APIs Designing for Elasticity Designing for Resilience Designing for Sustainability The JEVONS Paradox in Cloud Native Sustainability Approaches Deployment Environment Software Engineering UI Architecture Sustainability Assessment Designing for Failure Infrastructure Communication Dependencies Internal Designing for Reliability Pareto Chart Designing for High Availability Active-Active Deployments Active-Passive Deployments Designing for the Customer Designing for Interoperability Designing for Events Designing for Observability Designing for Portability Designing for Ethics Designing for Accessibility Accessibility Guidelines and Standards Designing for Automation Designing for Maintainability Designing for Usability Summary Part III: Modernizing Enterprise IT Systems Chapter 10: Modernize Monolithic Applications to Cloud ­Native What Is Decoupling? Technical Debt How Are Technical Debts Accumulated? How Is Technical Debt Impacting Your Enterprise? How to Decide on Decoupling? Decoupling Model Decoupling Decoupling Approach Decoupling Plan Decoupling Principles Decoupling Business Case Decoupling Strategies Domain-Driven Design How Does Domain-Driven Design Manage Complexity? What Is a Domain? Goals of Domain-Driven Design Domain-Driven Design Model Strategic DDD Tactical DDD Guiding Principles of DDD Event Storming Key Roles in an Event Storming Workshop Event Storming Exercise Step 1: Identify the Objectives Step 2: Event Map: Capture Domain Events Step 3: Event Map: Identify Commands, Triggers, and Read Models Step 4: Event Map: Identify Aggregators Step 5: Context Map: Identify the Bounded Context How Does a Bounded Context Communicate? Ubiquitous Language Tactical Implementation of DDD Step 6: Microservices Identification Entity Value Objects Aggregates Domain Model to Microservices API Model Value of Domain-Driven Design The Business Value of DDD Drawbacks of DDD Where DDD Is Not Useful Summary Chapter 11: Enterprise IT Assessment for a Cloud Native Journey Introduction Assessment What Is an Assessment Used For? Assessment Objectives Assessment Execution Approach and Key Activities Cloud Native Assessment When to Consider a Cloud Native Assessment Cloud Native Maturity Assessment Model Detailed Architecture Assessment Assessment Usage Architecture Assessment Model Assessment Questions Template Automation Maturity Assessment Automation Maturity Assessment Model Automation Maturity Assessment Questionnaire Template Summary Chapter 12: “-ilities” Fitness Function What Is a Fitness Function? Categories of Fitness Functions Atomic vs. Holistic Triggered vs. Continuous Static vs. Dynamic Automated vs. Manual Temporal International vs. Emergent Domain-Specific Design-Time Fitness Function Runtime Fitness Function Execution of the Fitness Function Manual Execution Automated Execution Fitness Function Identification Fitness Function: Coupling and Cohesion Fitness Function: Security Fitness Function: Extensibility, Reusability, Adaptability, and Maintainability Fitness Function: Performance Fitness Function: Resiliency Fitness Function: Scalability Fitness Function: Observability Fitness Function: Compliance Fitness Function Metrics Review Function Metrics Summary Part IV: Cloud Native Software Engineering Chapter 13: Enterprise Cloud Native Software Engineering Cloud Native and Traditional Application Engineering Intelligent Software Engineering From Project to Product Organization Transformation Agile Software Development Methodologies Hypothesis-Driven Development Why Do You Need a Hypothesis? Methodology Steps Hypothesis Example Framing Hypothesis Culture of Hypothesis Test-Driven Development Why TDD? TDD Cycle Steps of TDD Factors to Consider for TDD Drawbacks of TDD Behavior-Driven Development How BDD Helps You to Solve Problems BDD Principles and Practices BDD Process BDD Specification Transition to BDD Benefits of BDD Drawbacks of BDD Feature-Driven Development Why FDD? FDD Process Feature Specification Feature Set Subject Area Benefits of FDD Drawbacks of FDD Architecture in the Agile Methodology Waterfall to Agile Transformation Summary Chapter 14: Enterprise Cloud Native Automation Introduction DevOps Today and Tomorrow From DevOps to DevSecOps Driver for Shift-Left Security Automation Principles and Best Practices Site Reliability Engineering DevSecOps Continuous Integration Continuous Delivery Continuous Deployment DataOps DataOps Principles DataOps Pipeline DevNetOps Network Operation and Challenges Why You Need DevNetOps? Network Reliability Engineering DevNetOps Pipeline DevOps in the Cloud AWS Cloud Azure Cloud Google Cloud DevOps Transformation Summary Chapter 15: AI-Driven Development Introduction Unique AI Challenges Why AI-Driven Development? AI-Driven Principles at a Glance Approach to AI AI Governance AI Framework AI Governance Measurement Governance Process Governance Model How to Train AI-Enabled Frameworks? AI-Driven Methodology AI Use Cases Discovery and Piloting AI Project Execution Deploy and Industrialize AI and ML in DevOps AI and ML in Code Management Source Code Progress DeepCode.AI Codota Quality Checks Continuous Feedback Kubeflow Alert Monitoring Summary Part V: Cloud Native Infrastructure Chapter 16: Containerization and Virtualization Introduction What Is Cloud Native Infrastructure? Cloud Native Environment Characteristics Cloud Virtualization How Does Virtualization Work? Types of Virtualization in the Cloud What Applications and Services Are Commonly Virtualized? Cloud Native and Virtual Machines Containerization What Is a Container Image? Container Architecture Container Principles Container Patterns Container Security Logging Mechanism Stateless Immutable Privileged Containers Monitoring Running Container as Root Image Version Container Networking Container Lifecycle Management Container Benefits Container Adoption Best Practices Containers in an Enterprise Container Orchestration Types of Orchestration Tools Docker Swarm Apache Mesos Kubernetes Orchestration Tool Comparison Kubernetes Features Kubernetes Principles and Patterns Predictable Demands Declarative Deployment Health Probe Automated Placement Singleton Service Init Container Sidecar Running a Cloud Native Application on the Container and Kubernetes Strategy Kubernetes Maturity Model Prepare Transform Deploy Build Confidence Improve Operations Measure and Control Optimize and Automate Service Meshes and Kubernetes Stateful Workloads on Kubernetes Kubernetes Multitenancy Kubernetes Secrets Kubernetes as a Service Google Kubernetes Engine Amazon Elastic Kubernetes Service Azure Kubernetes Services Red Hat OpenShift VMware Tanzu Summary Chapter 17: Infrastructure Automation What Is Infrastructure Automation? What Can You Automate? What Is Infrastructure as Code? IaC in Build Pipeline Automation Capture Requirements Prepare Automation Code Set Up Infrastructure Install OS Set Up Network and Storage Deploy Services Define Everything As Code How Do You Select an IaC Tool? What Coding Language Can You Use? IaC Example IaC Tools Terraform Ansible SaltStack Chef Puppet CFEngine AWS Cloud Formation IaC Tools Comparison Summary Part VI: Cloud Native Operations Chapter 18: Intelligent Operations Introduction Why Do You Need Intelligent Operations? Elements of Intelligent Operation Data-Driven Approach Applied Intelligence Cloud Enablement Right Talent and Skill Smart Partnership AIOps Central Functions Artificial Intelligence Data Automation Anomaly Detection Event Correlation IT Service Management (ITSM) Example Use Case of AIOps Traditional Operations AIOps-Based Operation Capabilities of AIOps AIOps Transformation AIOps Strategy AIOps Transition AIOps Transformation Benefits of AIOps ChatOps ChatOps Benefits Types of ChatOps Group Chat Bots ChatOps in Service Support ChatOps (Bot) Architecture Industry Example Use Cases Group Chat Use Case: Microsoft Teams–Based Chatbot with AI Is Integrated with ServiceNow Chatbot Use Case: Payment Industry to Resolve Billing Queries and Create Case Management Requests Summary Chapter 19: Observability Introduction Difference Between Monitoring and Observability Full-Stack Observability Connected Across Capabilities One Source of Truth Visualization Observability and Cloud Native Services Observability in Kubernetes Observability and DevOps Common Use Cases for Observability with AIOps Guidance to Choose Observation Tools Benefits of Observability Observability, Monitoring, and Machine Learning Models Algorithms Help in Observability Workflow Steps for ML Summary Part VII: Cloud Native Features Chapter 20: Cloud Native Trends Cloud Native Trends Designing for “-ilities” Cloud Native Architecture Open Application Model Specification Web Assembly Data Gateways HTTP/3 RSocket and Reactive Streams Low Code/No Code Actor Model Kubernetes on the Edge GitOps General Trends Across Industry 5G 5G Technology 5G Features Advantages of 5G Cloud Native and 5G: Network Slicing Digital Twin Why a Digital Twin? Digital Twin Implementation Quantum Computing Why Quantum Computing? Potential Use Cases Extended Reality Edge Computing Summary Index
دانلود کتاب CLOUD NATIVE ARCHITECTURE AND DESIGN : a handbook for modern day architecture and design with... enterprise-grade examples