NATS基本介绍

NATS基础简介

NATS是一个简单、安全、可扩展的高效消息系统,它可以实现分布式部署,横向扩展。主要运用在云本地应用、IoT基础消息设施和微服务架构中。

NATS由Apcera team维护,主要包括了NATS Server (才用Go语言编写), NATS Streaming和各类语言的客户端应用框架(Python, Ruby, Node.js, Elixir, Java, NGINX, C, and C#)。NATS越来越受到开发者的欢迎,大公司如ricsson, HTC, Siemens, VMware, Pivotal, GE 和 Baidu均有实用NATS。

有两个很成功的介绍案例可供参考。

NATS与其它消息系统的性能对比。

NATS架构

消息能够被接受,编码和被一个或者多个订阅者处理,一个订阅者能够可以异步或者同步处理NATS消息。

异步处理:异步处理才用callback的回调操作来实现。当一个消息到达时,注册的回调操作接受控制去处理这个消息。按照这样的处理模式,消息接受处理之间没有等待关系。其实现原理是才用多线程调度。

同步处理:按照请求等待模式同步处理到来的消息。

发布订阅模型

发布订阅答复模型

发布队列订阅模型

欢迎订阅微信公众号

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐