我们的支付服务已经创建了两个,现在,创建一个订单服务来消费支付服务,先创建一个服务cloud-alibaba-order-8000,其内部逻辑直接拷贝cloud-order-8000的内部逻辑,pom.xml文件中,不在引用对于eureka的依赖了,而是使用nacos
<?xml version="1.0" encoding="UTF-8"?><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"> <parent> <artifactId>cloudservice</artifactId> <groupId>com.felix</groupId> <version>1.0-SNAPSHOT</version> </parent> <modelVersion>4.0.0</modelVersion>
<artifactId>cloud-alibaba-order-8000</artifactId>
<dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-actuator</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-devtools</artifactId> </dependency> <dependency> <groupId>com.felix</groupId> <artifactId>cloud-mbg</artifactId> </dependency> <dependency> <groupId>com.felix</groupId> <artifactId>cloud-common</artifactId> </dependency> <dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId> </dependency> </dependencies>
</project>
复制代码
然后配置文件application.yml也移除对于eureka的配置,更换成为nacos的配置
spring: application: name: consumer-cloud-alibaba-order cloud: nacos: discovery: server-addr: localhost:8848
server: port: 8000
management: endpoints: web: exposure: include: '*'
复制代码
运行cloud-alibaba-order-8000,此时nacos中应该是有两个支付服务,一个订单服务
访问http://localhost:8000/order/payment/1测试下
可以发现,nacos已经做了负载均衡,那么它的负载均衡是怎么来的呢?看下图
实际上,我们引入nacos后,它自带ribbon,所以,负载均衡其实还是由ribbon实现的
评论