SpringBoot应用集成微服务组件Nacos

骚话环节

一入编程深似海,从此节操是路人。脱发已是常态,致富还需绝顶。

那天我听说程序员之间还相互鄙视,其中不能忍的终极鄙视:有女朋友的程序员鄙视没有女朋友的程序员。这不能忍,打不过怎么办,问就是加入吧。

由于是测试环境,使用版本比较新,学当然要学新知识吸收精华,羽化成仙,做那万人敬仰韩天尊。啊,不好意思,扯远了。开个玩笑,我们依旧使用稳定版本。此次在Linux发行版操作系统中全程使用root用户进行测试避免权限问题带来的干扰,如果使用普通用户请自行测试提权赋予所有者或者所属组权限。

骚话不多说,直接进入今天的主题springboot项目集成微服务组件nacos

springboot与微服务组件nacos

必备环境,前置条件尽量保持一致

  • JDK版本: JDK17
  • 开发工具和项目构建工具:STS4 & Maven3.6
  • Springboot版本:Springboot2.7.x
  • 服务监控三件套:Nacos2.x、Prometheus2.3.x、Grafana9.3.x
  • 开发测试环境:Linux(centos-stream-9)云服务器或者VMware搭建环境

你可以了解到的知识:从项目开发构建到线上测试发布,不过,需要具备一点点Java或者其它编程语言基础知识。

tips:做实验时请检查是否关安装防火墙管理工具,关闭防火墙服务或者开启相应端口,或者放通云服务器安全组。

企业中生产环境,唯稳,稳中求快

可以看到,我再次使用了这张流程图,在第三篇会总结使用过程。

Nacos服务快速启动

关于nacos2.2.0相关配置说明以及数据源说明,遇到问题总结,可以参考如下文章:

https://blog.cnwangk.top/2023/03/30/MySQL数据库与Nacos搭建监控服务/

使用hexo搭建静态博客网站,感兴趣可以自己搭建一个,利用github pages和cloudflare pages等进行同步。之所以给出上面的链接,因为一篇优质的教程,会持续更新迭代。当然,在个人公众号里面同样可以搜索到相关教程。

根据个人或者团队开发环境,可以选择框架开发环境:spring、springboot以及springcloud集成nacos

值得注意的地方

服务器部署nacos服务支持多种场景:

  1. Nacos原生形式部署。
  2. Nacos Docker形式部署。
  3. Nacos Kubernetes形式部署。

至于用哪种方式,根据实际业务场景分析,选择符合个人或者公司业务场景的最佳方式。

Nacos支持三种部署模式

  • 单机模式:用于测试和单机试用。
  • 集群模式:用于生产环境,确保高可用。
  • 多集群模式:用于多数据中心场景。

高可用环境准备

  • 建议支撑环境:部署JDK,需要 1.8 及其以上版本
  • 建议硬件配置:2核 CPU / 4G 内存 及其以上
  • 建议软件配置:生产环境 3 个节点 及其以上

Nacos 依赖 Java 环境来运行。如果您是从代码开始构建并运行Nacos,还需要为此配置 Maven环境,请确保是在以下版本环境中安装使用:

1、预备环境准备

  • 64 bit OS,支持 Linux/Unix/Mac/Windows,推荐选用 Linux/Unix/Mac

  • 64 bit JDK 1.8+ 。

  • Maven 3.2.x+ 。

2、下载源码或者安装包

你可以通过源码发行包两种方式来获取 Nacos。

个人推荐:下载发行包。关于版本,使用稳定版本(通常有GA标识),个人习惯使用官方推荐的上一个小版本。有特殊需求可以下载源码包,修改源码重新编译。

从 Github 获取源码方式,使用git clone命令,值得注意的是你需要部署Git环境

git clone https://github.com/alibaba/nacos.git
cd nacos/
mvn -Prelease-nacos -Dmaven.test.skip=true clean install -U  
ls -al distribution/target/
// change the $version to your actual path
cd distribution/target/nacos-server-$version/nacos/bin

nacos发行包下载地址

下载编译后压缩包方式,您可以从 最新稳定版本 下载 nacos-server-$version.zip 包。

unzip nacos-server-$version.zip 或者 tar -zxvf nacos-server-$version.tar.gz
cd nacos/bin
  • $version指具体nacos版本号,比如具体版本:nacos-server-2.1.1。

  • Windows平台建议下载以 .zip结尾的压缩包:nacos-server-2.1.1.zip。

  • Linux平台建议下载以 .tar.gz 结尾的压缩包:nacos-server-2.1.1.tar.gz。

3、修改配置文件

注意:修改conf目录下的application.properties文件。设置其中的nacos.core.auth.plugin.nacos.token.secret.key值,详情可查看鉴权-自定义密钥:

鉴权插件

注意,文档中的默认值SecretKey012345678901234567890123456789012345678901234567890123456789VGhpc0lzTXlDdXN0b21TZWNyZXRLZXkwMTIzNDU2Nzg=为公开默认值,可用于临时测试,实际使用时请务必更换为自定义的其他有效值。

4、启动服务器

Linux/Unix/Mac:执行startup.sh脚本
启动命令(standalone代表着单机模式运行,非集群模式):

sh startup.sh -m standalone

如果您使用的是ubuntu系统,或者运行脚本报错提示[[符号找不到,可尝试如下运行:

bash startup.sh -m standalone

Windows平台:执行startup.cmd脚本
启动命令(standalone代表着单机模式运行,非集群模式):

startup.cmd -m standalone

5、关闭服务器

Linux/Unix/Mac:执行shutdown.sh脚本

sh shutdown.sh

Windows平台:执行shutdown.cmd脚本

shutdown.cmd

可以在Windows中使用terminal或者cmd命令行运行shutdown.cmd命令,也可以双击shutdown.cmd运行文件。

以下为个人实战总结,仅供参考

个人开发以及测试环境

  • Spring Tool Suite4
  • JDK17
  • Maven3.6
  • Springboot2.7.6
  • VMware16 & Linux(Centos-9-Stream)

关于IDE的选择

有人喜欢使用 IntelliJ IDEA ,有人喜欢用 Vim,有人喜欢用VSCode,还有人就偏爱 eclipse 。开发工具 IDE 的选择,不一定非要和我保持一致。个人开发者可以根据自己的喜好选择,怎么顺手怎么来,主打一个用的舒心。如果是团队开发,最优质的方案是与团队保持一致。

可能是入坑最开始接触的 IDE 是eclipse,习惯了。个人小项目偶尔会用VSCode,大型项目更趋向于 eclipse 或者 IntelliJ IDEA。

STS4 开发工具

支持OS版本,彼时最新版本是4.17.1

  • Linux X86_64、Linux ARM_64
  • MACOS X86_64、MACOS ARM_64
  • WINDOWS X86_64

官网:Spring | Tools

下载地址:https://download.springsource.com/release/STS4/4.16.1.RELEASE/dist/e4.25/spring-tool-suite-4-4.16.1.RELEASE-e4.25.0-win32.win32.x86_64.self-extracting.jar

Maven 环境配置

STS4开发工具引入Maven配置

依次找到顶部菜单栏:Window---> Preferences---> Maven--->User Settings--->Global Settings & User Settings--->Apply

配置完记得点击Apply或者Apply and Close

Maven Repo配置阿里云镜像源

本地maven环境配置conf\settings.xml(使用阿里云镜像地址)ÿ

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值