本文主要简单介绍NSQ,包含以下内容:
- 概念
- 组件
- 工具
一、概念
NSQ是一个基于go语言开发的分布式实时消息架构。NSQ主要用于处理大规模消息任务,每天可以处理的任务可达十亿级别。
NSQ 具有分布式和去中心化拓扑结构,该结构具有无单点故障、故障容错、高可用性以及能够保证消息的可靠传递的特征。
二、组件
nsqlookupd
管理nsqd节点拓扑信息并提供最终一致性的发现服务的守护进程。nsqd
负责接收、排队、转发消息到客户端的守护进程。它可以独立运行,并且定时向nsqlookupd服务发送心跳。nsqadmin
nsq的web统计界面,可实时查看集群的统计数据和执行一些管理任务。
三、工具
utilities:常见基础功能、数据流处理工具,如nsq_stat、nsq_tail、nsq_to_file、nsq_to_http、nsq_to_nsq、to_nsq。