2025上半年,最新 AI实践都在这!20+ 应用案例,任听一场议题就值回票价 了解详情
写点什么

开源消息系统 NATS 2.0 发布:增强安全性、支持全球灾难恢复

  • 2019-07-10
  • 本文字数:1040 字

    阅读完需:约 3 分钟

开源消息系统 NATS 2.0 发布:增强安全性、支持全球灾难恢复

开源消息系统NATS发布了 2.0 版本,新版本带来了先进的安全管理、全球灾难恢复功能和大规模性能改进。NATS 是云原生计算基金会(CNCF)的一个孵化器项目,为云原生系统、物联网消息传递和微服务提供消息服务。主导 NATS 开发的 Synadia 公司表示,新版本的目标是“为现代分布式系统量身定制通信系统”。


NATS 是一组可用于在分布式系统中管理系统间通信的产品,由 Synadia 维护。Synadia 基于 NATS 提供了一个通信系统。NATS 的消息传递使用了发布者和订阅者模型,客户端通过 URL 连接到系统,并向主题订阅或发布消息。NATS 是一种即发即弃的消息传递系统,可以保证最多一次传递。如果不存在订阅者,则消息直接被丢失。NATS流提供了可配置的消息持久性,并且可以通过消息确认保证至少一次消息传递。



NATS 的订阅和发布模型


NATS 2.0 是自发布原始代码库以来最大的一个特性版本,目标是解决大规模分布式消息传递所面临的各种挑战。NATS 团队表示,最新版本的目标是降低总体维护成本,改进隔离以便降低运维成本,提供简单的灾难恢复功能,以及安全管理的去中心化。NATS 2.0 的主要新特性包括帐户、全局部署和去中心化的安全性。


帐户功能带来了安全、隔离的通信上下文。客户端在连接到系统时可以指定一个帐户或默认使用全局帐户。数据可以在帐户之间共享,但因为是基于用户定义的访问限制,所以帐户只会访问它们需要的主题和数据。帐户通过服务或流共享数据。服务就像端点一样,可以支持对帐户的访问。服务可以被导出,这样其他帐户就可以导入被导出的服务。导入服务后,就可以将请求发送到导入帐户。


NATS 全局部署支持具有超集群概念的全局拓扑,超集群功能与跨区域 NATS 集群类似。在路由客户端时,首选本地客户端,然后使用往返延迟时间(RTT)来查找超级集群中延迟最低的 NATS 集群。在服务中断的情况下,流量会在区域集群之间自动路由,从而实现无需额外配置的灾难恢复。星型拓扑也可以用叶子节点实现,叶子节点透明、安全地在特定的本地数据和全局 NATS 部署之间建立桥接,并可用于边缘计算或物联网应用程序。


NATS 2.0 的安全性是通过OperatorAccountUser来管理的。Operator 用于在系统中定义根信任,Account 用于限制和暴露服务和流。User 则有访问帐户的特定凭据和权限。


NATS 使用 Go 开发,并为 C 语言、Java、Elixir、Node.js 和 Ruby 等多种语言提供了客户端。类似的产品包括 RabbitMQ、Kafka 和 ActiveMQ。有关安装和运行 NATS 的更多信息可以在NATS文档中找到。


原文链接


Open Source Messaging Software NATS Releases 2.0


2019-07-10 08:005818
用户头像

发布了 731 篇内容, 共 466.5 次阅读, 收获喜欢 2006 次。

关注

评论

发布
暂无评论
发现更多内容

编译Spring5.2.0源码

CoderLi

Java spring 程序员 后端 Java 25 周年

Spring 获取单例流程(一)

CoderLi

Java spring 程序员 源码分析 后端

Spring 获取单例流程(二)

CoderLi

Java spring 程序员 源码分析 后端

谈谈程序链接及分段那些事

泰伦卢

c++

Flink on Zeppelin (1)入门篇

Geek_8o1tcx

大数据 flink 流计算 Zeppelin

架构师训练营第二周总结

一剑

Websocket直播间聊天室教程 - GoEasy快速实现聊天室

GoEasy消息推送

直播 websocket 即时通讯 聊天室 弹幕

Spring-资源加载

CoderLi

Java spring 程序员 后端 Java 25 周年

漫画 | 啊哈,给我一碗孟婆汤

码农神说

程序员 测试 互联网人 设计师

为什么你的简历石沉大海,offer 了无音讯?

非著名程序员

程序员 程序人生 提升认知 简历优化 简历

架构师训练营第二周作业

一剑

架构师训练营第 2 周——学习总结

在野

极客大学架构师训练营

别教我女儿该怎么穿,教你儿子别去强奸

小天同学

教育 日常思考 个人感悟 自我保护

程序一定要从main函数开始运行吗?

泰伦卢

c++

面试官:线程池如何按照core、max、queue的执行循序去执行?(内附详细解析)

一枝花算不算浪漫

面试 jdk源码 线程池

ARTS-Week Four

shepherd

Java algorithm

架构师训练营-课后作业-Week-2

Chasedreamer

Spring 容器的初始化

CoderLi

Java spring 程序员 源码分析 后端

以太坊颠覆了以太坊:引入密码学实现2.0性能突破

安比实验室SECBIT

以太坊 分布式系统 节点 密码学

【大厂面试05期】说一说你对MySQL中锁的理解?

NotFound9

Java MySQL 后端

软件开发:软件设计的基本原则

Skye

极客大学架构师训练营

CDN百科第四讲 | 如何优雅地在云上“摆摊”——做直播带货,你不得不关注的技术

阿里云Edge Plus

CDN 边缘计算 直播 直播带货

小师妹学JVM之:JVM的架构和执行过程

程序那些事

Java JVM 小师妹 性能调优 签约计划第二季

重学 Java 设计模式:实战享元模式「基于Redis秒杀,提供活动与库存信息查询场景」

小傅哥

设计模式 小傅哥 重构 代码坏味道 代码优化

LinkedList竟然比ArrayList慢了1000多倍?(动图+性能评测)

王磊

Java 数据结构 性能优化 性能 链表

618 将至,融云通信云技术如何助力电商销售

Geek_116789

数字产品开发那些事

涛哥 数字产品和业务架构

产品开发 数字化

Spring-AliasRegistry

CoderLi

Java spring 程序员 源码分析 后端

Spring 获取单例流程(三)

CoderLi

Java spring 程序员 源码分析 后端

架构师训练营第二周 - 作业

Eric

极客大学架构师训练营

作为CEO你比员工厉害吗?

Neco.W

创业 创业者 CEO

开源消息系统 NATS 2.0 发布:增强安全性、支持全球灾难恢复_软件工程_K Jonas_InfoQ精选文章