跳至主要內容

架构与工程

chanchaw大约 1 分钟java

微服务架构

一个微服务项目的大致架构如下,视频教程的文件在 \\192.168.0.119\安装程序\tutorial\SpringCloudAlibaba微服务架构实战

跟着视频教程制作的 项目open in new window

工程相关

创建工程

创建 maven 工程,不是 springboot 工程,不要选择任何 archetype,因为不会在工程下面直接写代码,下面步骤创建的工程下的 src 目录删除掉。

上图中的 GroupIdArtifactId 设计不合理,创建工程后还可以通过修改 pom.xml 进行调整,如上图的设置 pom.xml 中配置项如下

<groupId>com.xdf</groupId>
<artifactId>mkecommerce</artifactId>
<version>1.0-SNAPSHOT</version>

之后创建通用模块 e-commerce-common 时表示所属父工程为 com.xdf,而不是 com.xdf.mkecommerce,所以即使是创建工程,也需要在 GroupId 上设置项目名称,如 com.xdf.ecommerce,之后在工程下创建的模块所属父工程就是 com.xdf.ecommerce,而不是 com.xdf,能够明确得知这些模块都属于同一个项目 ecommerce 而不是整个公司的。推荐工程坐标设置如下:

<groupId>com.xdf.ecommerce</groupId>
<artifactId>ecproj</artifactId>
<version>1.0-SNAPSHOT</version>

创建模块

微服务通信方案

微服务间请求获取数据有三种通信方案,依据推荐度递增它们是:RPC,Message,OpenFeign ,最后的 OpenFeignSpringCloud 官方推荐的方式