安装启动nacos以及相关报错问题,简单的nacos使用测试代码

nacos下载地址:https://github.com/alibaba/nacos/releases/tag/2.0.0-BETA

1、windows下启动报Caused by: org.springframework.boot.web.server.WebServerException: Unable to start embedded Tomcat
截图如下图:


问题原因:
由于nacos在1.3.2之后默认使用的【集群方式启动】,如果我们本地是单击模式的话,需要手动改回单机模式,如果用的是高版本且是单机模式的话,需要修改启动命令,改为【单机模式】,编辑startup.cmd文件,cmd文件可以右键使用文本编辑器打开,也可以直接把该文件拖拽到notepad++中,建议使用后者
找到 set MODE=“cluster”

修改为:set MODE=“standalone”


修改保存之后,重新启动即可


访问路径:http://192.168.1.178:8848/nacos/index.html
用户名:nacos
密码:nacos

使用nacos的demo

在springboot的yml文件里:
生产者:


消费者:


启动服务,我们可以看到消费者和生产者都已注册到nacos里

简单的测试代码:

生产者的pom文件:


简单的Controller层代码:

@RestController
public class HelloController {

    @GetMapping("/provider/hi.do")
    public String hi(){
        return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date());
    }

}
1
2
3
4
5
6
7
8
9
启动类上的配置:

消费者的pom文件:

可以再父模块的pom文件里统一配置spring-cloud版本相关


service里的代码:

@FeignClient(value = "ProviderDemo")
public interface HelloService {

    // 需要和对应的提供者一模一样
    @GetMapping("/provider/hi.do")
    String hello();
}
1
2
3
4
5
6
7
controller里的代码:

@RestController
public class HelloController {


    @Autowired
    private HelloService service;

    @GetMapping("/hi.do")
    public String hi(){
        String aa = service.hello();
        System.out.println(aa+"======================");
        return service.hello();
    }

}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
启动类上的配置:


访问结果(http://127.0.0.1:8990/consumer-demo/hi.do):

@EnableDiscoveryClient // 服务的注册和发现
@EnableFeignClients // 启用Fegin 实现服务的远程调用

注:测试整体代码,已上传至资源,简单的nacos使用测试代码
————————————————
版权声明:本文为CSDN博主「冷冷清清中的风风火火」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_41451744/article/details/113940889