说明:
(1)本篇博客内容:【先了解一下,电商系统应该包含哪些业务】→【然后,结合微服务架构思想和原则,对电商系统的业务进行拆分】;
(2)在实际中,这部分工作一般都是大佬干的,一般人hold不住;
目录
1. 电商工程业务解读;
2.微服务拆分;(如何拆分电商工程)
(1)工程入口、用户鉴权微服务:电商工程的门面;
(2)账户微服务、商品微服务、订单微服务、物流微服务:主体功能微服务;
Tips:学习领域知识,最好的方式就是参考和借鉴;比如我们要开发电商系统,我们对电商领域的知识不了解,那么最好的办法就是去看看Amazon、淘宝他们是怎么做的;
1. 电商工程业务解读;
说明:
(0)本专栏的主要目的是,以开发电商系统为例,讲解【Spring Cloud/Alibaba】的内容;所以,本专栏的电商项目,相对来说简单一些,并不很复杂;
(1)电商系统,一开始需要有注册和登录业务,以实现用户的绑定;其中,也可以包含鉴权;
(2)我们这儿的电商系统,功能服务只设计了四个:用户账户服务、商品服务、订单服务、物流服务;
知道了,我们将要开发的电商项目,有哪些业务后,就可以根据这些业务,按照微服务的原则,进行拆分了;
2.微服务拆分;(如何拆分电商工程)
(1)工程入口、用户鉴权微服务:电商工程的门面;
说明:
(1)我们的电商系统,拆成微服务架构的项目后,首先需要的就是【工程入口,及用户鉴权微服务】,这是电商工程的门面;
(2)不仅仅对于电商工程,对于所有的微服务架构的工程,网关都是微服务架构的唯一入口;网关位于所有(功能)微服务的前面,实现了对(功能)微服务的路由、过滤、限流等;
(3)请求总是会先到达网关(W-commerce-gateway);网关中的路由配置是必须要有的,其会把这个请求向下转发;限流配置与自定义过滤器都是可选的;
(4)登录、注册,都属于鉴权的范畴;所以,与网关直接交互的微服务就是鉴权微服务(E-commerce-authority)
(2)账户微服务、商品微服务、订单微服务、物流微服务:主体功能微服务;
说明:
(1)请求经过网关后,就会进入主体功能微服务;即,主体功能微服务在网关的背后,是不直接暴露给客户端的;
(2)E-commerce-service:代表电商工程中的功能微服务;可以认为是一个统称;
(3)经过分析,我们这个电商系统,主体功能部分,将拆分成四个微服务:分别是账户微服务、商品微服务、订单微服务、物流微服务;
(4)其中,我们拆分的结果是:订单微服务会依赖其他三个微服务;另外的其他三个微服务,没有依赖关系,相对独立;
● 我们在划分微服务,需要按照业务划分,业务与业务之间应该没有很多交集(最好是没有交集),相对独立;
● 同时,要尽量做到不同业务之间的依赖很少;但是,这个“少”是相对的来说的;对于一个复杂的系统,微服务之间存在依赖是很正常的;
● 很可能,我们一开始划分的并不是很完美,也可以在后面开发的过程中,不断优化;



