spring cloud官方耦合度最好的服务注册于服务发现是eureka。但是在实际应用中,consul服务既能结合spring cloud又能结合其他服务进行服务注册与服务发现,同时功能点强于eureka,对于consul与eureka的优缺点,在此不做介绍。下文使用consul结合spring cloud进行服务注册与服务发现。
consul安装包:consul_0.8.3_windows_amd64.zip
系统环境:win7
注:本文其他开发环境见上篇,在此略过
1.consul部署
consul既可以单节点使用,也可以进行集群部署,听过算法raft保持集群各节点一致性。在这里只是用consul单节点进行spring cloud的服务注册与服务发现应用。
- 解压consul_0.8.3_windows_amd64.zip,得到consul.exe
- 将consul.exe拷贝到D:\Program Files\consul(consul文件夹不存在则创建)下,然后在环境变量中配置PATH路径:D:\Program Files\consul
- 测试consul是否配置成功
- win7启动consul
打开cmd,输入consul agent -dev
界面:localhost:8500(consul默认端口为8500)
2.创建second-consul-server-1(2)服务
该工程作为server进行consul的注册server端。
1)在eclipse下创建maven工程second-consul-server-1(2),修改pom.xml。如下:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>com.fiberhome</groupId>
<artifactId>second-fiberhome</artifactId>
<version>0.0.1-SNAPSHOT</version>
</parent>
<artifactId>second-consul-server-1</artifactId>
<packaging>jar</packaging>
<name>second-consul-server-1</name>
<url>http://maven.apache.org</url>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-consul-discovery</artifactId>
</dependency>
</