Cloud Design Patterns

所在平台: Udemy

课程主页: https://www.udemy.com/course/cloud-design-patterns/

课程评论:没有评论

第一个写评论        关注课程

课程简介

课程名称:云设计模式 课程概述: 本课程旨在帮助学员通过云设计模式设计稳健的工作负载。云架构师通过深思熟虑地集成平台服务、功能能力与自定义代码,以实现高效、安全和高性能的工作负载,满足业务和技术需求。有效的云解决方案要求对这些需求有深入了解,并能够仔细选择拓扑和方法,以应对每个工作负载的独特挑战与约束。云设计模式是解决重复架构问题的成熟方法,为克服这些挑战提供了有价值的指导。 设计模式在云架构中的重要性: 已建立的设计模式是系统架构的基本构件。利用这些模式,架构师可以设计出可靠、安全、经济高效、有效且高性能的基础设施和分布式系统。课程中覆盖的模式是技术无关的,适用于Microsoft Azure、其他云平台、本地环境及混合解决方案。 为什么云设计模式重要: 基于云的工作负载面临独特挑战,通常与对分布式计算的常见误解有关,例如假设网络始终可靠、延迟为零、带宽无限、安全得到保证等。这些错误假设可能会危害系统的可靠性和性能。云设计模式虽然不能完全消除这些挑战,但能帮助识别潜在问题并提供缓解策略。理解为什么应采用某种模式与理解如何实施同样重要。 利用模式构建良好架构的工作负载: 行业标准设计模式是创建稳健、可扩展和高效云解决方案的基础。每种模式与架构卓越的关键支柱相一致:可靠性、安全性、性能效率、操作卓越和成本优化。有些模式可能在这些支柱之间引入权衡,因此在设计过程中进行深思熟虑的评估至关重要。 课程涵盖的主要云设计模式: - 使者模式(Ambassador):将客户端连接任务卸载到辅助服务,以实现更高的抽象。 - 反腐层(Anti-Corruption Layer):实现一个外观,以安全地与遗留系统集成。 - 异步请求-回复(Asynchronous Request-Reply):支持异步后台处理,同时提供及时的前端响应。 - 前端的后端(Backends for Frontends):为特定前端接口创建定制的后端API,提高关注点分离。 - 船闸模式(Bulkhead):将应用程序组件隔离到池中,以限制故障的影响并增强系统弹性。 - 缓存旁路(Cache-Aside):按需加载数据到缓存,以提高应用程序响应速度。 - 编排模式(Choreography):赋予单个服务独立控制业务操作的能力,去除对中央协调者的需求。 - 申索检查(Claim Check):将大消息拆分,以防止消息代理过载并简化消息处理。 - 补偿事务(Compensating Transaction):在最终一致的工作流中,定义撤销操作的步骤。 - 竞争消费者(Competing Consumers):通过允许多个消费者同时处理队列中的消息,以进行处理扩展。 - 部署邮票(Deployment Stamps):部署独立的基础设施组件集,以增强可扩展性和隔离性。 - 外部配置存储(External Configuration Store):管理与应用程序部署包分离的外部配置。 - 联合身份(Federated Identity):委托身份验证过程给外部身份提供者,以提高安全性。 - 门卫(Gatekeeper):使用中介服务安全地验证和中介客户端请求。 - 网关聚合(Gateway Aggregation):使用API网关将多个后端调用组合成一个请求。 - 网关卸载(Gateway Offloading):将共享或计算密集型任务委托给专门的代理网关。 - 网关路由(Gateway Routing):通过统一的端点将传入请求引导至不同的后端服务。 - 地理分布节点(Geodes):在地理分布的节点上部署后端服务,以最大限度地提高可用性和性能。 - 优先队列(Priority Queue):确保高优先级请求得到优先处理。 通过本课程,学员将掌握构建高效、稳健云解决方案的设计模式与方法。

课程评论(0条)

课程详情

Designing Robust Workloads with Cloud Design PatternsCloud architects achieve resilient, secure, and high-performing workloads by thoughtfully integrating platform services, functional capabilities, and custom code to meet both business and technical requirements. Effective cloud solutions require a deep understanding of these requirements, as well as careful selection of topologies and methodologies to address the unique challenges and constraints of each workload. Cloud design patterns-proven approaches to recurring architectural problems-offer valuable guidance for overcoming these challenges.The Importance of Design Patterns in Cloud ArchitectureEstablished design patterns are fundamental building blocks for system architecture. By leveraging these patterns, architects can design infrastructure and distributed systems that are reliable, secure, cost-effective, efficient, and high-performing. The patterns covered in this course are technology-agnostic and can be applied across Microsoft Azure, other cloud platforms, on-premises environments, and hybrid solutions.Why Cloud Design Patterns MatterCloud-based workloads encounter unique challenges, often related to commonly misunderstood assumptions of distributed computing-such as assuming networks are always reliable, latency is zero, bandwidth is unlimited, security is guaranteed, system topologies remain static, administration is consolidated, component versioning is simple, and observability can be postponed. These mistaken assumptions can compromise system reliability and performance. Cloud design patterns do not eliminate these challenges outright, but they help identify potential issues and provide mitigation strategies. Each pattern presents specific trade-offs; understanding why a pattern should be applied is just as crucial as understanding how to implement it.Using Patterns to Build Well-Architected WorkloadsIndustry-standard design patterns are the foundation for creating robust, scalable, and efficient cloud solutions. Each pattern aligns with key pillars of architectural excellence: reliability, security, performance efficiency, operational excellence, and cost optimization. Some patterns may introduce trade-offs among these pillars, so thoughtful evaluation is essential during the design processKey Cloud Design Patterns CoveredThis course covers a range of primary patterns, including:Ambassador: Offload client connectivity tasks to a helper service for greater abstraction.Anti-Corruption Layer: Implement a façade to safely integrate with legacy systems.Asynchronous Request-Reply: Support asynchronous backend processing while providing timely frontend responses.Backends for Frontends: Create tailored backend APIs for specific frontend interfaces to achieve better separation of concerns.Bulkhead: Isolate application components into pools to limit the impact of failures and enhance system resilience.Cache-Aside: Load data into a cache on demand to improve application responsiveness.Choreography: Empower individual services to control business operations independently, removing the need for a central orchestrator.Claim Check: Break down large messages to prevent overloading message brokers and streamline message processing.Compensating Transaction: Define steps to undo operations as part of eventually consistent workflows.Competing Consumers: Scale processing by allowing multiple consumers to process messages in a queue simultaneously.Deployment Stamps: Deploy independent sets of infrastructure components to enhance scalability and isolation.External Configuration Store: Manage configuration externally, separate from application deployment packages.Federated Identity: Delegate authentication processes to external identity providers for improved security.Gatekeeper: Use an intermediary service to securely validate and broker client requests.Gateway Aggregation: Combine multiple backend calls into a single request using an API gateway.Gateway Offloading: Delegate shared or compute-intensive tasks to a specialized proxy gateway.Gateway Routing: Direct incoming requests to different backend services through a unified endpoint.Geodes: Deploy backend services across geographically distributed nodes to maximize availability and performance.Priority Queue: Ensure high-priority requests receive expedited processing.

课程标签

0人关注该课程

主题相关的课程