参考文档:什么是Nacos
Nacos = Dynamic Naming + Cofiguation services 快速实现动态服务注册、服务配置、服务元数据、流量管理
Nacos的出现主要解决了一下几个问题:
1.服务注册与发现:每个微服务启动的时候hi把自己的IP和端口告诉Nacos,服务之间相互调用的时候,可以通过Nacos来发送服务的IP和端口
2.动态配置:代码中的配置文件(application.yml)放在Nacos面板上统一管理,修改配置后,无需重启服务器,所有微服务可实时感知并生效
3.服务健康检测:Nacos可以阻止向不健康的主机或服务实例发送请求
Nacos默认启动在本地的8848端口 http://localhost:8848/nacos ,控制台初始默认账号和密码都是:nacos
Nacos提供两种部署运行模式:单机模式和集群模式,默认是集群模式。
在本地电脑上打开的时候,找到Nacos安装目录下bin文件夹下的启动脚本startup.cmd,可以修改文件使其以单机模式standalone打开,并且修改Xms = 512mb / 256mb来减少内存占用。
set MODE="standalone"
rem if nacos startup mode is standalone
if %MODE% == "standalone" (
echo "nacos is starting with standalone"
set "NACOS_OPTS=-Dnacos.standalone=true"
if "%CUSTOM_NACOS_MEMORY%"=="" ( set "CUSTOM_NACOS_MEMORY=-Xms512m -Xmx512m -Xmn256m" )
set "NACOS_JVM_OPTS=%CUSTOM_NACOS_MEMORY%"
)
Nacos单机模式默认使用内置的Derby数据库,可以通过修改conf/application.properties切换为MySQL数据库(推荐切换到MySQL),方便查看数据,支持集群模式。
关于控制手册:(下面是我回忆实习的时候接触到的内容,肯定有不足和错误,希望各位佬友指正)
配置列表:Nacos 配置列表就是微服务的"远程配置文件",主要配置技术中间件连接信息和日志,以及多环境差异化配置比如开发环境dev,测试环境test,预发环境pre,生产环境prod。
(开发流程:如果开发需要修改配置,需要在任务平台提交相应改动,然后交由对应的测试组,由测试组来进行配置)
服务上下线:
因为在阿里云效上频繁部署流水线会花钱且可能影响其他功能开发,所以本地开发的时候可以通过服务上下线来调用本地服务进行自测。
Nacos 基于Namespace 帮助用户逻辑隔离多个命名空间,可以管理测试、预发、生产等多环境服务和配置,让每个环境的同一个配置(如数据库数据源)可以定义不同的值。
刚进公司的时候,阿里云效,Rancher这些工具看的我头懵,真诚的希望各位佬能提供一下工作/实习中常见的工具/流程,可以为职场新人省去很多时间,感谢。
以后端开发为例,我总结的流程是:任务平台领需求------>写开发需求和组长讨论是否可行------>写API接口文档给前端(项目中也可能直接推送到 Swagger/Yapi/Apifox)------>开发需求并自测------>提交测试(开发环境,测试环境,预发环境)------>接测试提的BUG,然后修BUG------>上线之前写上线计划书,合并分支到master分支------>正式上线,监控日志看看是否有Error/Exception------>没有问题的话,证明该任务已完成。
4 个帖子 - 2 位参与者