当前位置: 首页 > article >正文

nats 消息系统架构

CHATGPT给出的nats对比

在这里插入图片描述
这个基本是ok,nats focus 在realtime ,但缺少了iot,另外nats的核心是快速,在core里面其实没有提供al least once, exactly once模式

架构

在这里插入图片描述

nats 的最底层,分为

  • server
  • cluster ,由多个server构成
  • Gateway , 逻辑概念,通过route实现cluster之间通讯和控制
  • leaf node,边缘节点

nats server/lead的核心对象

  • subject ,nats 内部的存储基本都是subject,包括inbox/stream其实也是一种subject,内部server信息也是保存在$SRV开头的subject下
  • disk storage,stream = subject+disk storage + server ARK
  • reply/inbox,这个是nat的一个特点,每次message 都可以指定inbox接收返回,stream和request/reply模式都是通过inbox实现的
  • queue,用于消费者分组,同一message只会发生给queue里面的一个consumer实例

nats的serviceframe = request/reply+queue +指定$SRV subject

用户、认证和其它

在这里插入图片描述

  • Operator ,可以理解为root,连接不同cluster进行account/user 维护,包括subject /stream的访问权限关联
  • account ,account可以理解为多个user的group,nats 的subject/stream支持在account/user两级设置
  • user ,最终访问者

user访问模式

  • 用户+密码,这种模式如果没有指定user归属account,为默认sys account,不推荐
  • creds ,使用类似ssl证书模式,但实际体现为一个长字符串进行认证,即nsc的sign模式

account/user分类

  • sys, 每个cluster有且只有一个,没有显式知道为$G
  • common, 非sys

Subject Mapping:通过消息mapping,实现原始subject按policy 转发到一个或者多个subject下,用于灰度分流,细分访问控制等场景


http://www.kler.cn/a/545937.html

相关文章:

  • 【个人开发】cuda12.6安装vllm安装实践【内含踩坑经验】
  • 【自学笔记】人工智能基础知识点总览-持续更新
  • xpath语法以及基本使用
  • npm安装时无法访问github域名的解决方法
  • 视觉定位VPS的现状与未来
  • 华纳云:如何从服务器日志中发现僵尸进程?
  • unity 实时光为什么无法切换为烘焙光
  • html css js网页制作成品——HTML+CSS+js茉酸奶的茶网页设计(5页)附源码
  • 深度整理总结MySQL——Expalin指南(一)
  • OpenCV机器学习(3)期望最大化(Expectation-Maximization, EM)算法cv::ml::EM
  • 【C/C++算法】从浅到深学习--- 二分查找(图文兼备 + 源码详解)
  • QEMU参数与使用
  • 日语发音的节拍
  • 后台终端方法
  • Linux系统运行模式和链接
  • 大模型的未来已来
  • 【机器学习实战】kaggle背包价格预测(堆叠的实战用法)
  • 如何保持 mysql 和 redis 中数据的一致性?PegaDB 给出答案
  • 上课啦 | 2月17日软考高项【5月备考班】
  • MacOS使用PhpWebStudy搭建PHP开发环境