上篇已经介绍了如何开发eureka服务并让多个服务进行相互注册,接下来记录如何开发一个服务然后注册到eureka中并能通过ribbon成功被调用
开发一个用户服务并注册到eureka中,用户服务负责访问数据库获取用户信息,直接上关键代码:
pom.xml(主要导入springcloud和eureka的依赖):
<dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency> <!-- 导入Eureka服务的依赖 --> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-eureka-server</artifactId> </dependency> <dependency> <groupId>com.alibaba</groupId> <artifactId>druid</artifactId> <version>1.0.9</version> </dependency> <!-- mysql --> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> </dependency> <!-- SpringBoot的Mybatis启动器 --> <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version>1.1.1</version> </dependency> </dependencies> <!-- 导入Spring Cloud的依赖管理 --> <dependencyManagement> <dependencies> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-dependencies</artifactId> <version>Edgware.SR4</version> <type>pom</type> <scope>import</scope> </dependency> </dependencies> </dependencyManagement>
application.properties(主要配置eureka,将自身注册到上篇文章中开发好的7071和7070端口的eureka服务中)
spring.datasource.driverClassName=com.mysql.jdbc.Driver
spring.datasource.url=jdbc:mysql://localhost:3306/mydb01
spring.datasource.username=root
spring.datasource.password=100200
spring.datasource.type=com.alibaba.druid.pool.DruidDataSource
mybatis.mapper-locations=classpath:/mappings/*.xml
mybatis.type-aliases-package=com.darling.login.domain
server.port=${port}
#应用名称
spring.application.name=userServer
# 是否需要将自己注册到注册中心中,默认值true
eureka.client.registerWithEureka=true
# 是否从注册中心中获取注册信息,默认值true
eureka.client.fetchRegistry=false
# 客户端和服务端进行交互的地址
eureka.client.serviceUrl.defaultZone=http://127.0.0.1:7070/eureka/,http://127.0.0.1:7071/eureka/
#将自己的ip地址注册到Eureka服务中
eureka.instance.prefer-ip-address=true
用户服务的启动类:
@EnableDiscoveryClient // 表明自己是eureka服务的客户端 @SpringBootApplication @MapperScan("com.darling.user.mapper") public class UserServerApplication { public static void main(String[] args) { SpringApplication.run(UserServerApplication.class, args); } }
这里没有贴上获取用户信息接口的相关代码,为了测试后面的负载均衡我也开了两个用户服务的微服务,端口号分别为6061和6062.至此用户微服务就已开发好并已经成功注册到eureka中了,见下图:
接下来测试用户信息接口:
下篇将记录如何整合ribbon来调用用户服务