编辑
2025-08-28
java
00

目录

eurek
(1)搭建eureka注册中心
1.引入eureka注册中心的依赖
2.编写启动类添加@EnableEurekaServer注解
3.添加application.yml文件
(2)注册服务(user-server)
1.在user-server服务中引入依赖
2.在user-sever的application.yml中添加配置
3.启动全部服务查看eureka中是否显示
(3)在order-server中实现服务拉取
1.使用服务名称代替服务ip和端口
2.实现负载均衡

eurek

(1)搭建eureka注册中心

1.引入eureka注册中心的依赖

pom
<dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-netflix-eureka-server</artifactId> </dependency>

2.编写启动类添加@EnableEurekaServer注解

3.添加application.yml文件

config
server: port: 10086 spring: application: name: eurekaserver eureka: client: service-url: defaultZone: http://127.0.0.1:10086/eureka

(2)注册服务(user-server)

1.在user-server服务中引入依赖

pom
<dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId> </dependency>

2.在user-sever的application.yml中添加配置

config
spring: application: name: userservice eureka: client: service-url: defaultZone: http://127.0.0.1:10086/eureka

3.启动全部服务查看eureka中是否显示

image.png

(3)在order-server中实现服务拉取

1.使用服务名称代替服务ip和端口

java
@GetMapping("{orderId}") public Order queryOrderByUserId(@PathVariable("orderId") Long orderId) { // 根据id查询订单并返回 Order order = orderService.queryOrderById(orderId); // 利用RestTemplate发送http请求 String url = "http://userservice/user/"+order.getUserId(); User user = restTemplate.getForObject(url, User.class); // 封装User order.setUser(user); return order; }

2.实现负载均衡

image.png

java
@MapperScan("cn.itcast.order.mapper") @SpringBootApplication public class OrderApplication { public static void main(String[] args) { SpringApplication.run(OrderApplication.class, args); } @Bean @LoadBalanced public RestTemplate restTemplate(){ return new RestTemplate(); } }

本文作者:钱小杰

本文链接:

版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!