
架构
文章平均质量分 86
DevDiary
这个作者很懒,什么都没留下…
展开
-
领域驱动设计(DDD)学习笔记之:战术设计
聚合根是聚合内部的一个特殊实体,作为聚合的唯一入口点,负责聚合内的所有操作和状态变更。聚合根通过维护聚合内对象的引用和关系,确保聚合的一致性和业务规则的完整性。聚合根在DDD中扮演着重要角色,它作为聚合的入口点和主要控制者,负责管理聚合内部的对象和业务逻辑,确保聚合的一致性和完整性。通过合理设计和使用聚合根,可以有效提升领域模型的清晰性和可维护性。在实际项目中,持续关注和优化聚合根的设计,确保其符合业务需求和系统发展的需要。原创 2024-05-28 23:21:42 · 1655 阅读 · 0 评论 -
领域驱动设计(DDD)学习笔记之:战略设计
为每个上下文定义清晰的接口和协议,确保上下文之间的交互规范和稳定。REST API接口:定义上下文之间的REST API接口,规范请求和响应格式。消息队列:通过消息队列实现上下文之间的异步通信,确保松耦合。确定限界上下文的边界是DDD战略设计中的关键步骤,通过合理划分上下文边界,可以有效管理复杂业务系统,提高系统的灵活性和可维护性。在实际项目中,结合业务需求、团队结构和领域事件等因素,持续评估和优化上下文边界,确保系统的稳定性和一致性。原创 2024-05-28 23:03:44 · 969 阅读 · 0 评论 -
领域驱动设计(DDD)学习笔记之:基础理论与概念
领域是系统所要解决的业务问题的范围,它是业务知识的集合,包含了业务中的所有概念、规则和逻辑。领域描述了系统的业务环境,是整个系统开发的核心。子域是领域的进一步划分,表示领域中的一个特定部分。每个子域对应于一个具体的业务功能或业务流程,通过将领域划分为多个子域,可以更好地管理和组织复杂的业务逻辑。限界上下文是DDD中的一个重要概念,用于划分和隔离领域模型。每个限界上下文有自己独立的模型和业务逻辑,可以避免不同上下文之间的模型冲突。实体是领域模型中的核心概念,表示具有唯一标识符和生命周期的业务对象。原创 2024-05-28 22:36:49 · 1289 阅读 · 0 评论 -
金融科技微服务架构草图
本文将探讨如何通过Spring Cloud微服务架构构建高效的金融科技系统,并展示一个典型的金融科技微服务架构设计。原创 2024-05-21 00:34:19 · 1216 阅读 · 0 评论 -
微服务架构(如SpringCloud )中业务中台概念讲解
在微服务架构特别是Spring Cloud技术领域中,业务中台(Business Middle Platform, BMP)是一个关键概念,旨在通过整合和复用企业的核心业务能力,提高业务响应速度和敏捷性。原创 2024-05-20 23:17:34 · 1245 阅读 · 0 评论 -
软件架构C4视图
C4模型(Container, Component, Code, Context)是一种用于软件系统架构表达的方法,由软件架构师Simon Brown创立。C4模型主要目标是提供一种直观、易于理解的方法来描述软件系统的结构。它比传统的UML或4+1视图模型更专注于软件架构的通信与文档化,尤其适用于面向服务和微服务架构的描述。系统上下文视图(Context Diagram),作为C4模型中的最高层视图,是用来描述软件系统与其外部环境之间的交互和关系的工具。原创 2024-04-24 15:26:34 · 1687 阅读 · 0 评论 -
软件架构4+1视图
用例(Use Case):用例是一系列交互动作的集合,描述了系统用户(或其他系统)如何使用系统完成特定的业务目标。每个用例代表一个功能性需求。场景(Scenario):场景是用例的一个实例,描述了在特定条件下的一条具体的事件流。场景包括正常流程和可能的异常或边界条件。场景视图是连接业务需求与技术实现的桥梁,它使得架构师可以从实际操作的角度理解系统的行为。通过在设计阶段就使用场景进行验证,可以大幅减少开发过程中的返工,提高开发效率,确保最终产品质量。原创 2024-04-24 14:44:18 · 2451 阅读 · 0 评论 -
常见的访问控制模型
这些模型可以根据不同的需求和安全政策单独使用,或者组合使用以提供更全面的安全策略。访问控制模型的选择和实施是确保信息安全和合规性的关键部分。访问控制模型是一种在计算机安全管理中广泛使用的框架,用于定义系统如何限制用户或程序对系统资源的访问。原创 2024-04-23 22:07:32 · 625 阅读 · 0 评论 -
十二因素应用方法论
十二因素应用方法论是一套针对软件开发尤其是SaaS应用的方法论,专为提高软件应用的可扩展性、可部署性、维护性和可移植性而设计。这一方法论由Heroku的工程师在2011年提出,主要面向在现代云平台上运行的应用。原创 2024-04-23 23:45:00 · 710 阅读 · 0 评论 -
分布式共识算法:Paxos、Raft、Zab
Paxos 是一个分布式系统共识算法,由 Leslie Lamport 在1990年代提出。它被设计用来处理分布式系统中的一致性问题,确保在一个包含多个节点的网络中,即使部分节点发生故障或者网络出现问题,系统仍能达成一致和正确的决定。Paxos 主要用于日志复制或系统状态的一致性维护,是构建可靠分布式系统的基础算法之一。原创 2024-04-22 16:25:02 · 2011 阅读 · 2 评论 -
架构设计领域的一些总结
设计原则是引导软件开发的核心思想,它们帮助开发者编写高质量、易于维护和扩展的代码。以下是一些关键的设计原则,包括SOLID、DRY和KISS,这些都是每个软件工程师应该掌握的。原创 2024-04-21 23:56:12 · 752 阅读 · 0 评论 -
探讨消息队列如何保证幂等性
虽然幂等性设计在某些情况下可能会带来设计上的挑战,但其带来的系统稳定性和可靠性的优势是显而易见的。在分布式环境和不稳定的网络条件下,通过幂等性设计,系统可以更健壮地处理外部请求,减少潜在的错误和数据不一致问题。在设计系统时,应根据实际的业务需求和操作特性权衡是否实施幂等性设计。基于消息内容的幂等性是一种有效的策略,尤其适用于那些可以从消息本身提取唯一性标识的系统。设计时需要仔细考虑如何从业务逻辑和消息内容中提取合适的字段来生成键值,并处理可能的状态维护问题。原创 2024-04-15 07:00:00 · 1273 阅读 · 0 评论 -
分布式事务怎么实现
分布式事务是指涉及多个独立的计算实体(如服务器、数据库或其他资源)的事务处理,这些实体可能分布在不同的物理位置。在分布式事务中,各个参与节点需要协调执行,以确保整个事务要么完全成功,要么完全失败,从而维护事务的原子性和一致性。原创 2024-04-14 16:09:47 · 749 阅读 · 0 评论