RNACOS:用Rust实现的Nacos服务

RNACOS是一个使用Rust语言开发的Nacos服务实现,它继承了Nacos的所有核心功能,并在此基础上进行了优化和改进。作为一个轻量级、快速、稳定且高性能的服务,RNACOS不仅包含了注册中心、配置中心和Web管理控制台的功能,还支持单机和集群部署。

RNACOS的特点

  • 兼容性:RNACOS在设计上完全兼容最新版本的Nacos客户端SDK协议,包括1.x的HTTP OpenApi和2.x的gRPC协议,使得使用Nacos服务的应用可以平滑迁移到RNACOS。
  • 性能提升:与Java版本的Nacos相比,RNACOS提供了更快的启动速度、更低的系统资源占用、更高的性能和更稳定的运行。
  • 文档支持:详细的使用说明和文档可以在RNACOS Docs中找到。

Docker Pulls 和 GitHub Downloads

RNACOS提供了多种安装和运行方式,包括从GitHub Releases下载二进制包、使用Docker镜像等。

https://github.com/nacos-group/r-nacos

适用场景

  • 开发测试环境:如果你的开发测试环境正在使用Nacos,可以考虑替换为RNACOS,享受秒级的启动速度。
  • 个人资源云服务:对于个人资源云服务部署的Nacos,RNACOS是一个资源占用率低(包大小仅10M出头,不依赖JDK)、运行时CPU占用小于0.5%、内存占用小于5M的好选择。
  • 性能与稳定性提升:如果你正在使用非定制的Nacos服务,并希望提升服务性能与稳定性,可以考虑迁移到RNACOS。

演示

控制台演示地址:RNACOS Demo(演示服务与网址由一位热心用户提供)

  • 用户名:dev
  • 密码:dev

演示内容包括:

  • 配置中心:接近5千个配置
  • 服务中心:30个服务,每个服务有15个实例,共450个服务实例

注:以上演示内容,服务使用的内存在15M左右。

快速开始

一、安装运行RNACOS

单机部署

  1. 下载二进制包运行

    • Linux 或 MacOS:
      # 解压
      tar -xvf rnacos-x86_64-apple-darwin.tar.gz
      # 运行
      ./rnacos
      
    • Windows:解压后直接运行rnacos.exe。
  2. 通过Docker运行

    # 使用最新稳定版本
    docker pull qingpan/rnacos:stable
    docker run --name mynacos -p 8848:8848 -p 9848:9848 -p 10848:10848 -d qingpan/rnacos:stable
    

    Docker的容器运行目录是/io,会从这个目录读写配置文件。
    在这里插入图片描述

  3. 通过Docker-Compose运行

    version: '3.8'
    services:
      nacos:
        image: qingpan/rnacos:stable
        container_name: nacos
        ports:
          - "8848:8848"
          - "9848:9848"
          - "10848:10848"
        volumes:
          - ./data:/io:rw
        environment:
          - RNACOS_INIT_ADMIN_USERNAME=admin
          - RNACOS_INIT_ADMIN_PASSWORD=admin
          - RNACOS_HTTP_PORT=8848
        restart: always
    
  4. 通过Cargo编译安装

    # 安装
    cargo install rnacos
    # 运行
    rnacos
    
  5. 下载源码编译运行

    git clone https://github.com/r-nacos/r-nacos.git
    cd r-nacos
    cargo build --release
    cargo run --release
    
  6. MacOS通过brew安装

    # 把r-nacos加入taps
    brew tap r-nacos/r-nacos
    # brew 安装 r-nacos
    brew install r-nacos
    # 运行
    rnacos
    # 后续可以直接通过以下命令更新到最新版本
    # brew upgrade r-nacos
    
#账号和密码:admin admin
http://localhost:10848/rnacos/
  1. 部署到K8s
    K8s支持使用Helm部署。

测试、试用推荐使用第1、第2、第3种方式,直接下载运行就可以使用。

启动配置

RNACOS提供了多种启动配置参数,以适应不同的运行环境和需求。详细的参数说明和配置方式可以参考运行参数说明。

集群部署

RNACOS支持集群部署,具体的集群部署参考文档可以在集群部署说明中找到。


希望这篇博客能帮助你了解RNACOS,并在你的项目中有效地使用它。如果你有任何问题或需要进一步的帮助,请随时在评论区留言。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/929268.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Flink常见面试题

1、Flink 的四大特征(基石) 2、Flink 中都有哪些 Source,哪些 Sink,哪些算子(方法) 预定义Source 基于本地集合的source(Collection-based-source) 基于文件的source(…

BERT和RoBERTa;双向表示与单向的简单理解

目录 BERT和RoBERTa大型预训练语言模型 BERT的原理 RoBERTa的原理 举例说明 双向表示与单向的简单理解 除了预训练语言模型,还有什么模型 一、模型类型与结构 二、训练方式与数据 三、应用场景与功能 四、技术特点与优势 BERT和RoBERTa大型预训练语言模型 BERT(Bi…

OpenAI 推出了 Canvas 和 SearchGPT

今天的故事从 ChatGPT 推出的 Canvas 和 SearchGPT 开始。 ©作者|Ninja Geek 来源|神州问学 ChatGPT 在最近推出了令人兴奋的 Canvas 功能,Canvas 不仅带来了 ChatGPT 界面上的变化,还完全改变了人们撰写文档和书写代码的体验! Canvas…

CentOS 9 配置静态IP

文章目录 1_问题原因2_nmcli 配置静态IP3_使用配置文件固定IP4_重启后存在的问题5_nmcli 补充 1_问题原因 CentOS 7 于 2014年6月发布,基于 RHEL 7,并在 2024年6月30日 结束维护。 CentOS 9 作为目前的最新版本,今天闲来闲来无事下载下来后…

ProjectSend 身份认证绕过漏洞复现(CVE-2024-11680)

0x01 产品描述: ProjectSend 是一个开源文件共享网络应用程序,旨在促进服务器管理员和客户端之间的安全、私密文件传输。它是一款相当流行的应用程序,被更喜欢自托管解决方案而不是 Google Drive 和 Dropbox 等第三方服务的组织使用。0x02 漏洞描述: ProjectSend r1720 之前…

【Vulkan入门】01-列举物理设备

目录 先叨叨git信息主要逻辑VulkanEnvEnumeratePhysicalDevices()PrintPhysicalDevices() 编译并运行程序 先叨叨 上一篇已经创建了VkInstance,本篇我们问问VkInstance,在当前平台上有多少个支持Vulkan的物理设备。 git信息 repository: https://gite…

小家电出海,沃丰科技助力保障售后服务的及时性与高效性

随着全球化步伐的加快,小家电行业也逐渐迈向国际市场,面向全球消费者提供服务。然而,跨国界的销售和服务挑战也随之而来,尤其是售后服务的及时性与高效性成为了企业亟需解决的问题。沃丰科技凭借其全渠道在线客服、工单系统和视频…

AI RPA 影刀基础教程:开启自动化之旅

RPA 是什么 RPA 就是机器人流程自动化,就是将重复的工作交给机器人来执行。只要是标准化的、重复的、有逻辑行的操作,都可以用 RPA 提效 准备 安装并注册影刀 影刀RPA - 影刀官网 安装 Chrome 浏览器 下载链接:Google Chrome 网络浏览器 …

Qt 2D绘图之五:图形视图框架的结构、坐标系统和框架间的事件处理与传播

参考文章链接: Qt 2D绘图之五:图形视图框架的结构和坐标系统 Qt 2D绘图之六:图形视图框架的事件处理与传播 图形视图框架的结构 在前面讲的基本绘图中,我们可以自己绘制各种图形,并且控制它们。但是,如果需要同时绘制很多个相同或不同的图形,并且要控制它们的移动、…

JavaScript 键盘控制移动

如果你想通过 JavaScript 实现键盘控制对象&#xff08;比如一个方块&#xff09;的移动&#xff0c;下面是一个简单的示例&#xff0c;展示如何监听键盘事件并根据按下的键来移动一个元素。 HTML 和 CSS&#xff1a; <!DOCTYPE html> <html lang"en">…

【Web】0基础学Web—html基本骨架、语义化标签、非语义化标签、列表、表格、表单

0基础学Web—html基本骨架、语义化标签、非语义化标签、列表、表格、表单 html基本骨架语义化标签图片属性a链接 非语义化标签特殊符号标签 列表无序列表结果展示 有序列表结果展示 定义列表结果展示 表格table属性tr属性结果展示 表单单标签form属性input属性selecttextareabu…

find / -name ‘*.jar‘ 需要加上英文单引号 (shell 的通配符展开行为)

文章目录 1. Shell 通配符展开&#xff08;Glob Expansion&#xff09;2. 有引号时的行为&#xff08;推荐&#xff09;3. 无引号时的行为4. 总结原因5. 推荐实践 rootiZuf67xiyefycct0a9rdi3Z:~# find / -name *.jar find: paths must precede expression: o2o.jar Usage: fin…

一次奇妙的getshell之旅

1. 资产收集时发现一个网站&#xff1a; https://xxxxxxxxxx/ischool/publish_page/0/ 发现存在管理员登陆: 这里之前在该旁站找到一个SQL注入&#xff0c;然后找到的这个账户密码&#xff08;这里如何从SQL注入找到账户密码前借鉴前面的报告。&#xff09;&#xff1a; 账号&…

QT6_UI设计——设置控件背景

1、右击选择控件 2、选择背景 color 颜色 background-color 背景颜色 alternate-background-color 交替背景颜色 border-color 边框颜色 border-top-color 边框顶端 border-right-color 边框右边 border-bottom-color 边框底部 border-left-color 边框左边 gridline-color 网…

第十三章 Linux计划任务

注意&#xff1a;进公司和有公司成员离职&#xff0c;一定要问计划任务&#xff0c;防止别人搞破坏背锅 13.1 一次性计划任务(atd服务) 1 安装 atd 服务 yum install -y at systemctl enable atd systemctl start atd ## 启动atd服务 systemctl status atd ## 查看atd服务…

Day28 买卖股票的最佳时机 跳跃游戏 跳跃游戏 II K 次取反后最大化的数组和

贪心算法 part02 122. 买卖股票的最佳时机 II - 力扣&#xff08;LeetCode&#xff09; 求最大利润 将每天的正利润加和 public int maxProfit(int[] prices) {int totalPrices 0;for(int i0;i<prices.length;i){if(i<prices.length-1&&prices[i1]>prices[…

Mac苹果电脑 java前后端开发环境及软件安装教程

本文记录我初次使用macOS系统&#xff0c;m4 mini安装开发软件及环境的全过程&#xff0c;希望能帮助到你&#xff0c;好用的请点赞评论收藏增加热度&#xff0c;让更多Mac小白轻松体验开发&#xff0c;20241129 …

ubuntu20.04安装OpenPcdet,CUDA版本11.8,显卡4090

本文参考这2篇文章的内容&#xff1a;https://blog.csdn.net/jin15203846657/article/details/122735375#comments_25352667 https://zhuanlan.zhihu.com/p/642158810 记录了自己安装OpenPcdet的过程。 OpenPcdet的安装需要cuda和pytorch版本严格关联。本例的CUDA版本&#xf…

Clickhouse MergeTree存储引擎

文章目录 MergeTree特点MergeTree核心参数- ORDER BY- PARTITION BY- PRIMARY KEY- SAMPLE BY- TTL- SETTINGS- index_granularity- index_granularity_bytes- min_index_granularity_bytes- enable_mixed_granularity_parts- use_minimalistic_part_header_in_zookeeper- min_…

将word里自带公式编辑器编辑的公式转换成用mathtype编辑的格式

文章目录 将word里自带公式编辑器编辑的公式转换成用mathtype编辑的格式MathType安装问题MathType30天试用延期MathPage.wll文件找不到问题 将word里自带公式编辑器编辑的公式转换成用mathtype编辑的格式 word自带公式编辑器编辑的公式格式&#xff1a; MathType编辑的格式&a…