nsq简要介绍

nsq服务端

nsq服务包含三个主要部分:lookupd(),nsqd(),admin(管理界面)

lookupd

官方理解: lookupd是守护进程负责管理拓扑信息。客户端通过查询 lookupd 来发现指定 topic的生产者,并且nsqd 节点广播 topic 和 channel 信息。

nsqd

官方理解: nsqd 是一个守护进程,负责接收,排队,投递消息给客户端。

admin(管理界面)

官方理解: 是一套web UI,用来汇集集群的实时统计,并执行不同的管理任务。

职能关系图

  • nsq主要组件的职能及关系

  • NSQ的拓补图

nsq中topic 和channel的关系

  • Topic会将消息发送到每个订阅者(channel)
  • channel的读消费类似负载均衡,会均匀的投递到各个消费端

nsqd 内部流程

nsqd如何保证消息不丢失的

channel 中的消息,推送给consummer,并且推送一个到 消息消费中队列,如果消费成功,从队列中移除。否则 按照预定的时间,重新推送。

引用

golang使用Nsq 官网

消息中间件NSQ深入与实践

转载于:https://my.oschina.net/u/3421984/blog/3000750

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值