【NACOS】的简单使用注册发现与服务配置以及搭配nginx集群

3 篇文章 0 订阅
2 篇文章 0 订阅

1.服务注册与发现

项目首先添加依赖

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

1.先启动nacos,本次以单机为例,详细可看

【Nacos】win 下使用nacos以及集群下出现错误:Error creating bean with name ‘memoryMonitor‘

1.配置yml文件

server:
 port: 9001

spring:
 application:
   name: nacos-test #自己起名字 会在nacos页面显示,以及用于客户端发现调用
 cloud:
   nacos:
     discovery:
       server-addr: 127.0.0.1:8848 #配置nacos地址

management:
 endpoints:
   web:
     exposure:
       exclude: '*'

2.启动项目,就可以在nacos页面看到
在这里插入图片描述2.服务发现

server:
  port: 83
spring:
  application:
    name: nacps-consumer
  cloud:
    nacos:
      discovery:
        server-addr: localhost:8848


#消费者将要去访问的微服务名称(注册成功进nacos的微服务提供者)
service-url:
  nacos-user-service: http:// nacos-test #即服务注册时的spring.application.name

配置负载均衡

@Configuration
public class ApplicationContextConfig {

    @Bean
    @LoadBalanced
    public RestTemplate getRestTemplate(){
        return new RestTemplate();
    }
}

进行测试调用

@RestController
public class OrderNacosController {

    @Resource
    private RestTemplate restTemplate;

    @Value("${service-url.nacos-user-service}")
    private String serverURL;


    @GetMapping("/consumer/payment/nacos/{id}")
    public String paymentInfo(@PathVariable("id")long id){
     //  /payment/nacos/ 为服务端接口
        return restTemplate.getForObject(serverURL+"/payment/nacos/"+id,String.class);
    }
}

3.nacos集群搭配nginx

nacos的集群可以看:

【Nacos】win 下使用nacos以及集群下出现错误:Error creating bean with name ‘memoryMonitor‘

nginx配置:


    upstream cluster{
    		server 127.0.0.1:8840;
    		server 127.0.0.1:8850;
    		server 127.0.0.1:8860;

    }

    server {
    		 	listen			1122;
    		 	server_name  localhost;
    		  location / {
    	 			proxy_pass  http://cluster;
    		 	}
    		}

然后集群启动nocas 和 nginx
项目yml配置:

server:
  port: 9002

spring:
  application:
    name: nacos-payment-provider
  cloud:
    nacos:
      discovery:
        #server-addr: 127.0.0.1:8848 #配置nacos地址
        server-addr: 127.0.0.1:1122 #配置ngnix地址

management:
  endpoints:
    web:
      exposure:
        exclude: '*'

4.服务配置
项目中配置
bootstrap.yml 和 application.yml 文件,因为项目加载过程中优先加载bootstrap.yaml

application.yml 配置为:

spring:
  profiles:
    active: dev #表示开发环境
    #active: test #表示测试环境
    #active: info #表示开发环境

bootstrap.yml 配置为:

server:
  port: 3377

spring:
  application:
    name: nacos-config-client
  cloud:
    nacos:
      discovery:
        server-addr: localhost:8848 #nacos作为服务注册中心地址
      config:
        server-addr: localhost:8848 #nacos作为配置中心地址
        file-extension: yaml #指定yaml格式的配置
        group: DEV_GROUP
        namespace: 123

#nacos 配置规则
#${prefix}-${spring.profiles.active}.${file-extension}
# prefix 项目名 即: spring:application: name: nacos-config-client
# spring.profiles.active 即 spring: profiles: active: dev
# file-extension 即file-extension: yaml

然后登录nacos页面根据上面nacos规则进行配置,然后发布就可以了,如图
在这里插入图片描述

在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值