专栏名称: macrozheng
专注Java技术分享,解析优质开源项目。涵盖SpringBoot、SpringCloud、Docker、K8S等实用技术,作者Github开源项目mall(50K+Star)。
目录
相关文章推荐
厦门网  ·  DeepSeek官方声明 ·  8 小时前  
厦门网  ·  DeepSeek官方声明 ·  8 小时前  
重庆市场监管  ·  该报年报了!祝新的一年生意兴隆! ·  昨天  
指尖新闻沈阳晚报  ·  热搜第一!微信又上新功能 ·  2 天前  
指尖新闻沈阳晚报  ·  热搜第一!微信又上新功能 ·  2 天前  
987私家车广播  ·  华为+DeepSeek来了! ·  4 天前  
987私家车广播  ·  华为+DeepSeek来了! ·  4 天前  
51好读  ›  专栏  ›  macrozheng

轻量级Nacos来了!占用资源极低,性能炸裂!

macrozheng  · 公众号  · 互联网安全 科技自媒体  · 2024-10-31 10:32

主要观点总结

文章介绍了r-nacos作为微服务注册中心的特点及其在mall-swarm微服务电商项目中的应用。文章涵盖了r-nacos的简介、mall-swarm项目简介、r-nacos的安装、项目实战、其他使用功能、性能压测以及总结。

关键观点总结

关键观点1: r-nacos简介

r-nacos是一款使用rust实现的nacos服务,提供注册中心和配置中心功能,占用内存小,性能优秀。

关键观点2: mall-swarm项目简介

mall-swarm项目是一套微服务商城系统,集成了注册中心、配置中心、监控中心、网关等功能,基于最新的微服技术栈。

关键观点3: r-nacos的安装与配置

文章介绍了如何通过Docker安装r-nacos,并在mall-swarm项目中配置使用r-nacos作为微服务注册中心。

关键观点4: 项目实战

文章以mall-swarm微服务电商实战项目为例,详细讲解了r-nacos的使用,包括服务注册、配置管理、用户管理等功能。

关键观点5: 性能压测与总结

文章提到了r-nacos的性能压测结果,并与Nacos进行了对比。总结中指出r-nacos功能强大,内存占用低,是替代Nacos的不错选择。


正文

微服务项目学习: cloud.macrozheng.com

Nacos作为一款非常流行的微服务注册中心,我们在构建微服务项目时往往会使用到它。最近发现一款轻量级的Nacos项目r-nacos,占用内存极低,性能也很强大,分享给大家。本文就以我的mall-swarm微服务电商实战项目为例,来聊聊它在项目中的使用。

r-nacos简介

r-nacos是一款使用rust实现的nacos服务,对比阿里的nacos来说,可以提供相同的注册中心和配置中心功能。同时它占用的内存更小,性能也很优秀,能提供更稳定的服务。

下面是r-nacos管理控制台使用的效果图,大家可以参考下:

mall-swarm项目简介

由于之后我们需要用到mall-swarm项目,这里简单介绍下它。mall-swarm项目(11k+star)是一套微服务商城系统,基于 2024最新微服技术栈 ,涵盖Spring Cloud Alibaba、Spring Boot 3.2、JDK17、Kubernetes等核心技术。mall-swarm在电商业务的基础集成了注册中心、配置中心、监控中心、网关等系统功能。

  • Github地址: https://github.com/macrozheng/mall-swarm
  • Gitee地址: https://gitee.com/macrozheng/mall-swarm
  • 视频教程: https://cloud.macrozheng.com/video/

项目演示:

安装

r-nacos支持Windows下的exe文件安装,也支持Linux下的Docker环境安装,这里以Docker安装为例。

  • 首先通过如下命令下载r-nacos的Docker镜像:
docker pull qingpan/rnacos:stable
  • 安装完成后通过如下命令运行r-nacos容器;
docker run --name rnacos -p 8848:8848 -p 9848:9848 -p 10848:10848 -d qingpan/rnacos:stable
  • 接下来就可以访问r-nacos的控制台了,默认管理员账号密码为 admin:admin ,访问地址:http://192.168.3.101:10848/rnacos/

项目实战

接下来就以我的mall-swarm微服务电商实战项目为例,来讲解下它的使用。由于mall-swarm项目中各个服务的配置与运行都差不多,这里以mall-admin模块为例。

  • 首先我们需要下载mall-swarm项目的代码,下载完成后修改项目的 bootstrap-dev.yml 文件,将其中的nacos连接地址改为r-nacos的地址,项目地址: https://github.com/macrozheng/mall-swarm
spring:
  cloud:
    nacos:
      discovery:
        server-addr: http://192.168.3.101:8848
      config:
        server-addr: http://192.168.3.101:8848
        file-extension: yaml
  • 接下来在r-nacos的 配置列表 中添加 mall-admin-dev.yaml 配置,该配置下项目的 config 目录下;
  • 之后把mall-admin模块运行起来,此时在 r-nacos 服务列表 功能中就可以看到注册好的服务了;
  • 接下来把其他模块的配置也添加到r-nacos的配置列表中去;
  • 再运行其他模块,最终 服务列表 显示如下;
  • 之后通过网关就可以访问到mall-swarm项目的在线API文档了,访问地址:http://localhost:8201/doc.html
  • 这里我们再把mall-swarm项目的后台管理系统前端项目 mall-admin-web 给运行起来;
  • 最后我们再把mall-swarm项目的前台商城系统前端项目 mall-app-web 给运行起来,发现都是可以正常从网关调用API的。

其他使用

r-nacos除了提供了基本的注册中心和配置中心功能,还提供了一些其他的实用功能,这里我们一起来了解下。

  • 如果你想添加一些其他访问的用户,或者修改admin用户的信息,可以使用 用户管理 功能;
  • 如果你想对r-nacos中配置信息进行导入导出,可以使用 数据迁移 功能;
  • 如果你想对r-nacos中的运行状态进行监控,你可以使用 系统监控 功能,监控还是挺全的。

性能压测

r-nacos的性能还是非常好的,这里有个r-nacos官方提供的性能压测结果表,大家可以参考下。

对比Nacos

个人感觉对比阿里的nacos,占用的内存资源减少了非常多,运行不到10M内存,而nacos需要900M,服务器资源不宽裕的小伙伴可以尝试下它。







请到「今天看啥」查看全文