SpringCloub02-服务配置中心nacos

目录

Nacos简介

一、nacos安装和启动

1.1、上传linux解压安装包

1.2、启动和关闭

1.3、访问

二、nacos注册中心(存放服务)

2.1、服务注册

2.2、服务调用

三、naocs配置中心(存放配置文件)

3.1、在 Nacos 平台中添加配置信息

3.2、项目工程中获取配置

四、配置、服务隔离

五、Nacos集群和持久化

5.1、Ncaos持久化

5.1.1.切换数据库

5.1.2.初始化数据库

5.1.3.测试

5.2、Ncaos集群

5.2.1.部署架构图

5.2.2.集群搭建

5.2.3.配置代理服务

5.2.4.测试

六、nacos开机启动(了解)

        1、编写开机启动文件 

        2、修改nacos的bin目录下的starup.sh

        3、设置开机自起


Nacos简介

Nacos /nɑ:kəʊs/ 是 Dynamic Naming and Configuration Service的首字母简称,一个更易于构建云原生应用的动态服务发现配置管理服务管理平台。

一、nacos安装和启动

1.1、上传linux解压安装包

[root@localhost ~]# cd /usr/upload
[root@localhost upload]# tar -zxvf nacos-server-1.4.1.tar.gz -C /usr/local	

1.2、启动和关闭

启动:

[root@localhost local]# cd nacos/bin/
[root@localhost bin]# ./startup.sh -m standalone #非集群模式启动
... ...
nacos is starting with standalone
nacos is starting,you can check the /usr/java/nacos/logs/start.out

关闭:

[root@localhost bin]# ./shutdown.sh
The nacosServer(3543) is running...
Send shutdown request to nacosServer(3543) OK
[root@localhost bin]

1.3、访问

浏览器访问http://192.168.***.***:8848/nacos,默认用户名/密码为: nacos/nacos

二、nacos注册中心(存放服务)

2.1、服务注册

2.1.0.启动nacos

2.1.1.工程引入依赖

spring-cloud-starter-alibaba-nacos-discovery

pom.xml

        <!--nacos客户端-->
        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
        </dependency>

2.1.2.配置文件添加nacos配置

配置nacos地址和端口号,设置注册服务名称

application.yml

spring:
  cloud:
    nacos:
      discovery:
        server-addr: 192.168.209.129:8848 #nacos服务的地址
  application:
    name: nacos-provider #向注册中心注册的名字

2.1.3.Springboot启动类添加注解

@EnableDiscoveryClient //向注册中心注册该服务,并可以获取其他服务的调用地址

@SpringBootApplication
@EnableDiscoveryClient//向注册中心注册该服务,并可以获取其他服务的调用地址
public class ProviderApp {
​
    public static void main(String[] args) {
        SpringApplication.run(ProviderApp.class);
    }
}

2.1.4.启动测试

效果:

2.2、服务调用

2.2.1.IOC容器注入RestTemplate

@Configuration
public class ConfigBean {
    @Bean
    public RestTemplate getRestTemplate(){
        return new RestTemplate();
    }
}

2.2.2.controller注入DiscoveryClient

通过DiscoveryClient获取nacos中注册服务信息,调用服务

@RestController
@RequestMapping(value = "/consumer")
public class ConsumerController {
    //访问Rest服务的客户端
    @Autowired
    private RestTemplate restTemplate;
    @Autowired
    private DiscoveryClient discoveryClient;

    @RequestMapping(value="/getUserById/{id}")
    public User getUserById(@PathVariable Integer id){
        //获取nacos中注册的所有服务信息
        List<String> serviceList = discoveryClient.getServices();
        for (String service : serviceList) {
            System.out.println(service);
        }
        //获取nacos中注册的指定服务信息
        ServiceInstance instance = discoveryClient.getInstances("nacos-provider").get(0);
        String serviceUrl = instance.getHost() + ":" + instance.getPort();
        //调用服务
        String url = "http://
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值