由于公司业务发展的需要,最近准备把公司现有的各个产品业务模块用微服务的方式进行重新整合部署,正好借此机会,认真学习一下火的不行的微服务,感受下微服务的魅力。能力有限,加之第一次学着写写技术类型的博客,有不到之处,还请各位大佬海涵。废话不多说,直接进入正题。
一、Springcloud服务框架搭建
1.Eureka服务注册与发现
创建springboot项目,https://start.spring.io/ 选择Maven项目,语言,springboot版本,坐标Group、Artifact,以及项目需要的依赖Dependencies。
Tips:groupid和artifactId被统称为“坐标”是为了保证项目唯一性而提出的,如果你要把你项目弄到maven本地仓库去,你想要找到你的项目就必须根据这两个id去查找。groupId一般分为多个段,这里我只说两段,第一段为域,第二段为公司名称。域又分为org、com、cn等等许多,其中org为非营利组织,com为商业组织。举个apache公司的tomcat项目例子:这个项目的groupId是org.apache,它的域是org(因为tomcat是非营利项目),公司名称是apache,artigactId是tomcat。
我们添加spring-cloud-starter-eureka-server依赖,注意springboot版本我这里使用的是2.1.6.RELEASE,springcloud版本使用的是Greenwich.RELEASE,两者版本需要考虑是否兼容。以下为pom文件内容:
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.1.6.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<groupId>com.tchcn</groupId>
<artifactId>MssServiceCenter</artifactId>
<packaging>jar</packaging>
<version>0.0.1-SNAPSHOT</version>
<name>EurekaServiceCenter</name>
<description>Eureka project for Spring Boot</description>
<properties>
<java.version>1.8</java.version>
</properties>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-dependencies</artifactId>
<version>Greenwich.RELEASE</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-eureka-server</artifactId>
<version>1.4.7.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<fork>true</fork>
<includeSystemScope>true</includeSystemScope>
</configuration>
</plugin>
</plugins>
</build>
2.服务间调用
3.Zuul API网关
二、Docker
1.安装docker
2.创建docker仓库
3.创建自定义镜像
4.构建容器并启动
三、Nginx代理
四、Redis缓存服务
五、MongoDB