cloud Alibaba电商后台组件实战:架构演进,了解领域驱动设计,项目公共模块编写(1)

简介: cloud Alibaba电商后台组件实战:架构演进,了解领域驱动设计,项目公共模块编写(1)

cloud Alibaba项目

架构演进

单体架构

统一在一个程序中 共享数据库和缓存,部署上线简单

缺点明显,代码耦合严重 牵一发而动全身

10.png


垂直架构

优点:服务,部署独立,水平扩展容易

缺点:搭建复杂,服务之间关系错综复杂,维护困难

2.png


SOA架构

开始有了分块的功能划分,但是还是通过一个总线,去调用各个服务节点

优点:提供了底层服务的统一路由,方便调用

缺点 : 实现难度较高,不同架构之间也有耦合

3.png


微服务架构

相比SOA,微服务的入口开始有了变化,不再是直接访问程序,而是通过网关来分派转发

通过过滤的请求会被转发到对应的微服务,每一个服务独立部,运行在不同的机器上,用rest或者http通信

4.png


认识领域驱动设计

优点,有入口鉴权,功能分布细化,性能卓越

缺点, 项目复杂难度,信息暴露,复杂链路等各种问题

5.png


对于领域驱动设计的理解

6.png


理解领域概念,学习领域知识,对领域建模


分析领域模型,推演实体,值对象,领域服务

找出聚合边界,降低服务耦合

为耦合配备储存仓库,数据持久化

实践DDD,并且不断的推到重构


经典分层架构

解读

User Interface 用户接口层 接收用户指令,展示信息

Appllcation 应用程序层 Controller 对外提供服务接口,对内调用领域层

Domain 领域层,相当于是实体对象,领域模型 对应 数据库中的表

infrastructure 基础设施层,为其他层提供基础通用的基础能力,通信能力和持久化机制

7.png


传统开发:


会在开始之前就设计好数据库的表,去实现需求,后面想要修改就会影响到功能甚至是整体结构


领域驱动设计:


初期关心的是业务,持久化只是为了业务设计后期的考虑


电商工程业务解读,微服务模块拆分

Tips


学习领域知识最好的方法就是参考和借鉴


简单理解图

8.png



微服务模块拆分

工程入口以及用户鉴权微服务

网关是微服务架构的唯一入口


这里是电商的门面


涉及到


权限鉴定

服务调用

限流等

9.png


主要功能服务模块

账户,商品,订单,物流


合理的微服务划分

尽可能让每一个服务减少依赖和与其他服务的交集,最好是没有交集

101.png

目录
打赏
0
1
0
0
6
分享
相关文章
Python 高级编程与实战:深入理解设计模式与软件架构
本文深入探讨了Python中的设计模式与软件架构,涵盖单例、工厂、观察者模式及MVC、微服务架构,并通过实战项目如插件系统和Web应用帮助读者掌握这些技术。文章提供了代码示例,便于理解和实践。最后推荐了进一步学习的资源,助力提升Python编程技能。
Python 高级编程与实战:构建微服务架构
本文深入探讨了 Python 中的微服务架构,介绍了 Flask、FastAPI 和 Nameko 三个常用框架,并通过实战项目帮助读者掌握这些技术。每个框架都提供了构建微服务的示例代码,包括简单的 API 接口实现。通过学习本文,读者将能够使用 Python 构建高效、独立的微服务。
Android实战经验之Kotlin中快速实现MVI架构
MVI架构通过单向数据流和不可变状态,提供了一种清晰、可预测的状态管理方式。在Kotlin中实现MVI架构,不仅提高了代码的可维护性和可测试性,还能更好地应对复杂的UI交互和状态管理。通过本文的介绍,希望开发者能够掌握MVI架构的核心思想,并在实际项目中灵活应用。
41 8
Jeesite5:Star24k,Spring Boot 3.3+Vue3实战开源项目,架构深度拆解!让企业级项目开发效率提升300%的秘密武器
Jeesite5 是一个基于 Spring Boot 3.3 和 Vue3 的企业级快速开发平台,集成了众多优秀开源项目,如 MyBatis Plus、Bootstrap、JQuery 等。它提供了模块化设计、权限管理、多数据库支持、代码生成器和国际化等功能,极大地提高了企业级项目的开发效率。Jeesite5 广泛应用于企业管理系统、电商平台、客户关系管理和知识管理等领域。通过其强大的功能和灵活性,Jeesite5 成为了企业级开发的首选框架之一。访问 [Gitee 页面](https://gitee.com/thinkgem/jeesite5) 获取更多信息。
Jeesite5:Star24k,Spring Boot 3.3+Vue3实战开源项目,架构深度拆解!让企业级项目开发效率提升300%的秘密武器
后端服务架构的微服务化转型
本文旨在探讨后端服务从单体架构向微服务架构转型的过程,分析微服务架构的优势和面临的挑战。文章首先介绍单体架构的局限性,然后详细阐述微服务架构的核心概念及其在现代软件开发中的应用。通过对比两种架构,指出微服务化转型的必要性和实施策略。最后,讨论了微服务架构实施过程中可能遇到的问题及解决方案。
云计算的未来:云原生架构与微服务的革命####
【10月更文挑战第21天】 随着企业数字化转型的加速,云原生技术正迅速成为IT行业的新宠。本文深入探讨了云原生架构的核心理念、关键技术如容器化和微服务的优势,以及如何通过这些技术实现高效、灵活且可扩展的现代应用开发。我们将揭示云原生如何重塑软件开发流程,提升业务敏捷性,并探索其对企业IT架构的深远影响。 ####
93 3
云原生架构下的微服务治理与挑战####
随着云计算技术的飞速发展,云原生架构以其高效、灵活、可扩展的特性成为现代企业IT架构的首选。本文聚焦于云原生环境下的微服务治理问题,探讨其在促进业务敏捷性的同时所面临的挑战及应对策略。通过分析微服务拆分、服务间通信、故障隔离与恢复等关键环节,本文旨在为读者提供一个关于如何在云原生环境中有效实施微服务治理的全面视角,助力企业在数字化转型的道路上稳健前行。 ####
从单体到微服务:如何借助 Spring Cloud 实现架构转型
**Spring Cloud** 是一套基于 Spring 框架的**微服务架构解决方案**,它提供了一系列的工具和组件,帮助开发者快速构建分布式系统,尤其是微服务架构。
354 69
从单体到微服务:如何借助 Spring Cloud 实现架构转型
智慧工地云平台的技术架构解析:微服务+Spring Cloud如何支撑海量数据?
慧工地解决方案依托AI、物联网和BIM技术,实现对施工现场的全方位、立体化管理。通过规范施工、减少安全隐患、节省人力、降低运营成本,提升工地管理的安全性、效率和精益度。该方案适用于大型建筑、基础设施、房地产开发等场景,具备微服务架构、大数据与AI分析、物联网设备联网、多端协同等创新点,推动建筑行业向数字化、智能化转型。未来将融合5G、区块链等技术,助力智慧城市建设。
服务架构的演进:从单体到微服务的探索之旅
随着企业业务的不断拓展和复杂度的提升,对软件系统架构的要求也日益严苛。传统的架构模式在应对现代业务场景时逐渐暴露出诸多局限性,于是服务架构开启了持续演变之路。从单体架构的简易便捷,到分布式架构的模块化解耦,再到微服务架构的精细化管理,企业对技术的选择变得至关重要,尤其是 Spring Cloud 和 Dubbo 等微服务技术的对比和应用,直接影响着项目的成败。 本篇文章会从服务架构的演进开始分析,探索从单体项目到微服务项目的演变过程。然后也会对目前常见的微服务技术进行对比,找到目前市面上所常用的技术给大家进行讲解。
109 1
服务架构的演进:从单体到微服务的探索之旅

热门文章

最新文章