1.SpringCloud Alibaba-Nacos[作为注册中心]
Nacos 是阿里巴巴开源的一个更易于构建云原生应用的动态服务发现、配置管理和服务管理 平台。他是使用 java 编写。需要依赖 java 环境
Nacos 文档地址: https://nacos.io/zh-cn/docs/quick-start.html
-
下载 nacos-server https://github.com/alibaba/nacos/releases
-
启动 nacos-server
- bin目录下执行sh startup.sh -m standalone
- 访问http://localhost:8848/nacos/
- 使用默认的nacos/nacos进行登录
- 将微服务注册到 nacos 中
a.首先,修改 pom.xml 文件,引入 Nacos Discovery Starter
b.在应用的 /src/main/resources/application.properties 配置文 件中配置 Nacos Server 地址<dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId> </dependency>
cloud:
nacos:
discovery:
server-addr: 127.0.0.1:8848
application:
name: gulimall-coupon
c.使用@EnableDiscoveryClient 开启服务注册发现功能
d.启动应用,观察 nacos 服务列表是否已经注册上服务
4.注册更多的服务上去,测试使用 feign 远程调用
Feign 使用三步
- 1.导包 openfeign
- 2.在调用者的SpringBootApplication类上添加注解 @EnableFeignClients(basePackages = “feign接口类的包名”)
- 3.在调用者一侧创建接口,将被调用方法的名称和路径粘贴过来,开启远程调用功能
import com.atguigu.common.utils.R;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.RequestMapping;
/**
* @FeignClient 注解中写被调用服务的名称
*/
@FeignClient("gulimall-coupon")
public interface CouponFeignService {
/**
* @RequestMapping 写全路径
*/
@RequestMapping("coupon/smscoupon/member/list")
public R memberCoupons();
}
下面分支展示了nacos这一功能的使用
https://github.com/nome1024/gulimall/pull/new/feature/nacos_registry_rpc