一分钟带你快速进入Nacos的世界,史上最简易教程!零基础也能看明白!谁反对?
首先容我先說一句題外話:你們能不能不要再卷了,給我留條活路吧!
文章目錄
- 1、Nacos簡介
- 2、服務(wù)提供模塊搭建
- 3、服務(wù)消費(fèi)者搭建
- 4、測試
1、Nacos簡介
阿里巴巴出品,經(jīng)歷了長達(dá)十多年的雙十一磨練;我只能說一句:阿里出品,必是精品!
一個更易于構(gòu)建云原生應(yīng)用的動態(tài)服務(wù)發(fā)現(xiàn)、配置管理和服務(wù)管理平臺。簡單了說就是注冊中心+配置中心(還不錯,搞下臺三個框架)。
如果你使用過Eureka,你就會發(fā)現(xiàn)Nacos是真的方便。服務(wù)列表也不用搭建了,nacos都幫你弄好了。
nacos的下載安裝教程地址:https://blog.csdn.net/Kevinnsm/article/details/117387323?spm=1001.2014.3001.5501
spring cloud alibaba nacos官網(wǎng)教程地址https://spring-cloud-alibaba-group.github.io/github-pages/hoxton/en-us/index.html#_start_a_consumer_application:
nacos官網(wǎng)地址:https://nacos.io/
2、服務(wù)提供模塊搭建
1、創(chuàng)建一個父工程(pom文件如下)
<?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"><modelVersion>4.0.0</modelVersion><groupId>com.hao</groupId><artifactId>cloudAlibaba-nacos</artifactId><packaging>pom</packaging><version>1.0-SNAPSHOT</version><modules><module>provider-service</module><module>consumer-service</module></modules><parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>2.3.6.RELEASE</version></parent><properties><spring.cloud.alibaba.version>2021.1</spring.cloud.alibaba.version><spring.cloud.alibaba.nacos.version>2.1.1.RELEASE</spring.cloud.alibaba.nacos.version></properties><dependencyManagement><dependencies><dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-alibaba-dependencies</artifactId><version>${spring.cloud.alibaba.version}</version></dependency><dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId><version>${spring.cloud.alibaba.nacos.version}</version></dependency></dependencies></dependencyManagement> </project>2、創(chuàng)建一個服務(wù)提供子模塊(pom依賴如下)
<dependencies><dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId></dependency></dependencies>3、controller層
@RestController public class ProviderController {@GetMapping(value = "/echo/{str}")public String echo(@PathVariable("str") String str) {return "hello" +"\t"+ str;} }4、application.properties(或application.yaml)中必須包含Nacos的一些基礎(chǔ)配置,如下
server:port: 8080 spring:application:name: provider-servicecloud:nacos:discovery:server-addr: http://你的ip:8848 #注冊進(jìn)服務(wù)中心如果不想使用 Nacos 進(jìn)行服務(wù)注冊和發(fā)現(xiàn),可以設(shè)置spring.cloud.nacos.discovery為false.
5、啟動類
@SpringBootApplication @EnableDiscoveryClient public class NacosProviderApplication {public static void main(String[] args) {SpringApplication.run(NacosProviderApplication.class,args);} }啟動provider之后,你就可以在 Nacos 控制臺上看到注冊的服務(wù)了。
注意一定要啟動nacos服務(wù),我在云服務(wù)器啟動的nacos;如果不懂請移步:https://blog.csdn.net/Kevinnsm/article/details/117387323?spm=1001.2014.3001.5501
3、服務(wù)消費(fèi)者搭建
除了controller之外,其他基本一樣;不再敘述(application.yml啟動端口需要改變、啟動類run方法參數(shù)需要改動)
@RestController public class ConsumerController {@Autowiredprivate RestTemplate restTemplate;@Autowiredprivate LoadBalancerClient loadBalancerClient;@Value(value = "${spring.application.name}")private String serviceName;@GetMapping(value = "/echo/name")public String echoName() {ServiceInstance instance = loadBalancerClient.choose("provider-service");String path = String.format("http://%s:%s/echo/%s", instance.getHost(), instance.getPort(), serviceName);System.out.println(path);return restTemplate.getForObject(path,String.class);} }多了一個config配置類,因為要遠(yuǎn)程調(diào)用嘛!
@Configuration public class NacosConfig {@Beanpublic RestTemplate getRestTemplate() {return new RestTemplate();} }參考了官網(wǎng)的教程:https://spring-cloud-alibaba-group.github.io/github-pages/hoxton/en-us/index.html#_start_a_consumer_application
4、測試
啟動這兩個服務(wù),訪問ip:8848/nacos/
調(diào)用consumer接口 http://localhost:8081/echo/name
成功了呀!
總結(jié)
以上是生活随笔為你收集整理的一分钟带你快速进入Nacos的世界,史上最简易教程!零基础也能看明白!谁反对?的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 2021年零基础带你走进nacos的世界
- 下一篇: 不会Nacos的配置中心?你怎么敢的呀!