|
所在平台: Udemy |
课程主页: https://www.udemy.com/course/master-software-architecture-system-design-for-developers/
课程评论:没有评论
课程名称:掌握系统设计与软件架构:基础-进阶 课程概述:您是否准备好从开发者晋升为软件架构师,并从编写应用程序转变为架构大型、高性能系统?本软件架构课程提供了一个完整的学习旅程,帮助开发者掌握软件架构和系统设计的基本知识,同时在真实场景中利用AWS云原生服务。该在线课程包括实践内容,深入讲解软件架构的技术技能、架构思维和云专业知识,旨在设计可扩展、弹性强且具成本效益的系统,以满足现代企业的需求。 您将学习到的内容: - 角色与职责:了解软件架构师与解决方案架构师的关键区别;探索软件架构与系统设计;学习如何建立和维护架构愿景。 - AWS云原生服务:用户管理、成本管理、亚马逊EC2、存储服务、网络配置、负载均衡、数据库管理,以及无服务器架构等相关主题。 - 重要的系统设计概念:包括有状态与无状态架构、故障容忍、数据库冗余与一致性模型等。 - 架构风格与模式:包括客户端-服务器、层次结构、微服务架构、领域驱动设计等。 - 迁移技巧与设计模式:微服务与单体架构的比较、服务器架构设计模式及相关安全策略。 安全性与可扩展性:本课程涵盖身份验证与授权、多因素认证、基于角色的访问控制等内容,并探讨垂直与水平扩展的最佳实践。 可靠性与可用性:学习如何衡量可靠性指标、构建业务连续性计划及灾难恢复策略,以确保系统的可用性与安全性。 性能优化:理解性能指标,并利用AWS的性能调整技术提高系统的响应速度。 通过完成本课程,您将具备领导架构决策、设计云解决方案和交付高性能软件系统的专业知识。适合想要提升技术职业生涯的开发者及有意在AWS平台上获得云原生服务实践经验的开发者。
Are you ready to advance your career from a developer to a software architect and transition from coding applications to architecting large-scale, high-performance systems?This Software Architecture Course provides a complete journey, from mastering the fundamentals of software architecture and system design for developers to leveraging AWS cloud-native services in real-world scenarios.This hands-on, in-depth software architecture online course equips you with the technical skills, architectural mindset, and cloud expertise needed to design scalable, resilient, and cost-effective systems that meet modern enterprise needs.What You'll Learn:Roles and Responsibilities:Understand the key differences between Software Architect vs. Solutions Architect.Explore Software Architecture vs. System Design.Learn how to build and maintain an Architectural Vision.AWS Cloud-Native Services:Amazon IAM: User creation, role policies, and enabling MFA.Cost Management: AWS Pricing Calculator, Budgets, and Free Tier usage.Amazon EC2: Instance Types, EBS, Pricing Models (On-Demand, Reserved, Dedicated, and Savings Plans).Storage Services: Amazon S3, S3 Storage Classes, Access Policies; EBS Volumes; and Amazon EFS.Networking: Amazon VPC, Subnets, IGWs, and Availability Zones.Load Balancing: ALB, NLB, and ELB with EC2 integration and cost analysis.Databases: Amazon RDS (MySQL, Aurora), DynamoDB setup, and real EC2 connections.Serverless: Build AWS Lambda functions with S3 triggers and CloudWatch logging.API Gateway: Create and manage REST APIs and explore integration options.Important System Design Concepts:Stateful vs. Stateless ArchitecturesLoad Balancer vs. Reverse ProxyFault Tolerance, Redundancy, ReplicationFailure Detection & Recovery, Rollback vs. Roll ForwardRetry Mechanism, Timeouts, Health Checks, Fallback MechanismRate LimitingDatabase Redundancy, Partitioning, ShardingDatabase Consistency Models, Consistent HashingCommunication Protocols & Messaging:HTTP Versions, REST, gRPC, GraphQLAMQP, RabbitMQ, Apache KafkaEvent-Driven & Data Streaming SystemsAmazon SQS, Amazon SNS, Amazon EventBridgeWebSocketsArchitectural Styles & Patterns:Client-Server, Layered (n-tier), Component-Based, Monolithic, Service-Oriented Architecture (SOA),Microservices ArchitectureDomain-Driven Design (DDD)Microservices Core Concepts:Service Discovery, Load Balancer, API GatewayService Mesh, Configuration Server, Database Per ServiceCircuit Breaker Pattern, SAGA Pattern, CQRS, Event SourcingChoreography Pattern, Aggregator Pattern, Backend for Frontend (BFF)Comparison:Monolith vs MicroservicesSOA vs MicroservicesMigration Techniques:Decomposition StrategiesStrangler PatternServerless ArchitectureDesign Patterns and AWS Compute ServicesSecurity:Authentication vs AuthorizationMulti-Factor Authentication (MFA), Single Sign-On (SSO)Role-Based Access Control (RBAC)AWS IAM Policies - Identity, Resource, and Session-basedShared Responsibility ModelJWT (JSON Web Tokens) - Creation and ValidationAmazon Cognito, OAuth 2.0 vs OpenID Connect (OIDC)Scalability:Vertical vs. Horizontal ScalingAuto Scaling with Amazon EC2 and ELBAWS Application Auto ScalingRelational Database Scalability: Challenges and SolutionsScalability with Amazon RDS, Aurora, and DynamoDBBest Practices for Scalable DesignReliability:Purpose, Benefits, and Trade-OffsMeasuring MTBF (Mean Time Between Failures) and MTTF (Mean Time to Failure)Building a Business Continuity Plan (BCP) and Disaster Recovery StrategyEnsuring Network Reliability and SecurityAvailability:Impacts and Challenges of AvailabilityResponse Time OptimizationActive-Active vs. Active-Passive ClusteringAvailability Implementation Using:Amazon EC2, Amazon S3Amazon RDS, Amazon AuroraAmazon DynamoDBGlobally Distributed ApplicationsMulti-Region DeploymentCDN via Amazon CloudFrontPerformance:Understanding Metrics: Speed, Latency, Throughput, BandwidthUsing CloudWatch Metrics for MonitoringConcurrency vs. ParallelismLoad Shedding, Request BatchingLazy Loading vs. Eager LoadingDeployment ConsiderationsAWS-Specific Performance Tuning:EC2 Placement GroupsMillisecond Latency TechniquesBy the end of this Software Design and Architecture Course, you'll be equipped with the expertise to lead architecture decisions, design scalable cloud solutions, and deliver high-performing software systems for enterprise needs.Who this course is for:Developers or Senior Developers, who are passionate about advancing their careers in technology and want to learn System Design and Software Architectures.Developers who want to gain hands-on experience with cloud-native services in the AWS platform.