去中心化分布式服务实时消息平台-NSQ

折月煮酒 提交于 2019-12-02 18:01:56

NSQ是一个基于Go语言的开源的分布式实时消息平台

NSQ可用于大规模系统的实时消息服务,它的设计目标是为在分布式环境下提供一个强大的去除中心化的分布式服务架构,可以每天处理数以亿计的实时消息

简介:http://www.oschina.net/p/nsq?fromerr=IbkI6VH8

官方网站:http://nsq.io/

NSQ的四大组件

nsqlookupd:管理nsqd节点拓扑信息并提供最终一致性的发现服务的守护进程

nsqd:负责接收、排队、转发消息到客户端的守护进程,并且定时向nsqlookupd服务发送心跳

nsqadmin:nsq的web统计界面,可实时查看集群的统计数据和执行一些管理任务 

utilities:常见基础功能、数据流处理工具,如nsq_stat、nsq_tail、nsq_to_file、nsq_to_http、nsq_to_nsq、to_nsq 

 

最主要的优势在如下三个方面:

1,性能。在多个著名网站生产环境中被采用,每天能够处理数亿级别的消息。参见官方提供的性能说明文档

2,易用性。非常易于部署(几乎没有依赖)和配置(所有参数都可以通过命令行进行配置)。

3,可扩展性。具有分布式且无单点故障的拓扑结构,支持水平扩展,在无中断情况下能够无缝地添加集群节点。还具有强大的集群管理界面,参见nsqadmin

RabbitMQ和NSQ的一些特点的比较:http://datastream.github.io/articles/mq-in-cloud

支持的客户端语言

http://nsq.io/clients/client_libraries.html

源码解析

http://www.baiyuxiong.com/?p=873

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!