极客时间架构师训练营 - week10 - 作业 2

简介: 极客时间架构师训练营 - week10 - 作业 2

根据当周学习情况,完成一篇学习总结

本周的课程主要内容是微服务与 DDD 相关的内容。第一次课程主要讲解是微服务架构,第二次课程主要讲的是领域驱动设计等。课程一开始,老师便强调在架构设计中很关键的“问题——需求——技术实现”倒三角模型。技术的选型,不光要考虑团队的实力,更是为了解决实际业务问题,满足实际业务需求的,而不是为了使用什么技术而上某某框架。

目前的微服务框架主要是基于网关的架构,由微服务网关统一接入,做安全防护、限流与协议适配等。所有的请求经过网关转发给后面的各个微服务,由他们进行处理并返回结果给前台展示。通用的做法是,各个微服务均注册到注册中心,服务之间的调用均从网关上找到对应的服务地址,再发送请求获取处理结果。在进行服务的横向扩展时,只需要多部署程序,注册到对应的注册中心。实施微服务,很重要的一点,就是要做好业务的模块化设计,保证模块之间的低耦合、高内聚、不同服务之间的依赖关系要清晰,强行将业务拆开,会使得系统更加混乱。

第二次课开始,老师引入职业性格测试相关的理论,架构师也按其特点分为专攻难题与把握大局型,按自己的特点选择相应的发展道路,也许是更合适的。领域驱动设计,在我看来是一种非传统的软件设计模式。相关的概念包括贫血模型与充血模型,子域,限界上下文,上下文映射图,实体,值对象等。DDD 理念,我们在实际开发中也许不能落实,毕竟大家都习惯了 MVC 的架构模式,而开发一般都需要与同事协同开发。不过我们还可以借鉴很多思路。老师还剖析了几个 DDD 改变代码开发困境的实际案例。

老师还讲解了软件的组件设计,包含三个原则,即组件内聚原则,共同封闭原则和共同复用原则。组件内聚原则是指软件复用的最小粒度应该等同于其发布的最小粒度;共同封闭原则是将相同功能的类抽象出来放到一个组件中;共同复用原则,即不要强迫组件的用户依赖他们不需要的东西。深刻理解这些原则,有利于我们设计更健壮的架构。


目录
相关文章
|
5月前
|
机器学习/深度学习 算法 安全
隐私计算训练营第三讲-详解隐私计算的架构和技术要点
SecretFlow 是一个隐私保护的统一框架,用于数据分析和机器学习,支持MPC、HE、TEE等隐私计算技术。它提供设备抽象、计算图表示和基于图的ML/DL能力,适应数据水平、垂直和混合分割场景。产品层包括SecretPad(快速体验核心能力)和SecretNote(开发工具)。算法层涉及PSI、PIR、数据分析和联邦学习(水平、垂直、混合)。此外,SecretFlow还有YACL密码库和Kusica任务调度框架,Kusica提供轻量化部署、跨域通信和统一API接口。
208 0
|
消息中间件 缓存 NoSQL
|
消息中间件 存储 关系型数据库
极客时间架构实战营作业八
极客时间架构实战营作业八
157 0
|
消息中间件 Java 中间件
极客时间架构实战营作业六
极客时间架构实战营作业六
119 0
|
资源调度 分布式计算 调度
Fink--3、Flink运行时架构(并行度、算子链、任务槽、作业提交流程)
Fink--3、Flink运行时架构(并行度、算子链、任务槽、作业提交流程)
|
容灾 网络协议
极客时间架构实战营模块 7 作业
极客时间架构实战营模块 7 作业
84 0
|
存储 缓存 负载均衡
极客时间架构实战营作业五
极客时间架构实战营作业五
127 0
|
存储 JSON NoSQL
极客时间架构实战营作业四
极客时间架构实战营作业四
111 0
|
12天前
|
缓存 监控 API
探索微服务架构中的API网关模式
【10月更文挑战第5天】随着微服务架构的兴起,企业纷纷采用这一模式构建复杂应用。在这种架构下,应用被拆分成若干小型、独立的服务,每个服务围绕特定业务功能构建并通过HTTP协议协作。随着服务数量增加,统一管理这些服务间的交互变得至关重要。API网关作为微服务架构的关键组件,承担起路由请求、聚合数据、处理认证与授权等功能。本文通过一个在线零售平台的具体案例,探讨API网关的优势及其实现细节,展示其在简化客户端集成、提升安全性和性能方面的关键作用。
45 2
|
16天前
|
存储 缓存 监控
探索微服务架构中的API网关模式
【10月更文挑战第1天】探索微服务架构中的API网关模式
48 2