一 NSQ是什么 NSQ是一个基于Go语言的分布式实时消息平台, 它具有分布式、去中心化的拓扑结构,支持无限水平扩展。无单点故障、故障容错、高可用性以及能够保证消息的可靠传递的特征。另外,NSQ非常容易配置和部署, 且支持众多的消息协议。支持多种客户端,协议简单,如果有兴趣,可参照协议自已实现一个也可以。简单点说,NSQ就是一个基于Go语言实现的轻量级消息平台。 二 NSQ组件 1 nsqd:一个负责接收、排队、转发消息到客户端的守护进程 2 nsqlookupd:管理拓扑信息, 用于收集nsqd上报的topic和channel,并提供最终一致性的发现服务的守护进程 3 nsqadmin:一套Web用户界面,可实时查看集群的统计数据和执行相应的管理任务 4 utilities:基础功能、数据流处理工具,如nsq_stat、nsq_tail、nsq_to_file、nsq_to_http、nsq_to_nsq、to_nsq 三 NSQ特点 1 可水平扩展(无代理,无缝地向集群添加更多节点) 2 主要在内存中 3 基于低延迟推送的消息传递 4 简单的 TCP 协议,支持任何语言的客户端库 5 统计信息,管理操作和生成器的 HTTP 接口 等等。。。。。 四 相关网址 1 NSQ官网 2 GitHub 3 NSQ官方客户端 4 NSQ文档