NSQ基于windows和docker的部署

原文:查看原文

目录

原文:查看原文

 

NSQ是什么?

简介

源码实现

基于docker部署

基于windows部署


NSQ是什么?

简介

    NSQ 是一个实时分布式消息平台,旨在大规模运行,每天处理数十亿条消息。

它提倡没有单点故障的分布式和分散式拓扑结构,实现容错和高可用性,同时保证可靠的消息传递。请看特点和保证。

在操作上,NSQ很容易配置和部署(所有参数都在命令行上指定,编译的二进制文件没有运行时的依赖性)。为了获得最大的灵活性,它与数据格式无关(消息可以是JSON、MsgPack、协议缓冲区或其他任何形式)。官方的Go和Python库是开箱即用的(还有许多其他的客户端库),如果你有兴趣建立自己的库,有一个协议规范。

架构:

监控界面:

无单点故障:

特点:

        追求简单部署

        追求高可用、避免单点故障、无中心设计

        确保消息送达

        生产者消费者自动发现、消费者连接所有生产者、向消费者推的模式

        提供 HTTP 接口

        提供几乎所有编程语言的客户端开发包

详细请参考这里https://nsq.io/overview/design.html

源码实现

基于docker部署

下载运行容器lookupd

docker pull nsqio/nsq
docker run --name lookupd -p 4160:4160 -p 4161:4161 nsqio/nsq /nsqlookupd

获取容器的ip地址

运行docker容器nsqd

docker run -d --name nsqd -p 4150:4150 -p 4151:4151 nsqio/nsq /nsqd --broadcast-address=172.17.0.2 --lookupd-tcp-address=172.17.0.2:4160

运行docker容器nsqadmin

查看容器详情

注意:如果是在linux上面需要关闭防火墙!

然后访问:http://localhost:4171/

基于windows部署

下载

https://nsq.io/deployment/installing.html

运行:nsqlookupd.exe

注意:这个 nsqlookupd 的http端口是4161,tcp端口是:4160 主要作用类似注册中心的作用。

启动一个nsqd节点

nsqd.exe -lookupd-tcp-address=127.0.0.1:4160

相关说明:

--lookupd 表示连接开启的lookupd服务,节点一般都是tcp减少每次连接的消耗

-tcp (-http) 表示用什么样的方式连接lookupd服务来进行注册以及存活检测

-address  表示lookupd的服务器ip地址在哪(lookupd和nsqd节点不在一个服务器上,本地就是127.0.0.1) 端口号是lookupd 启动时开启的端口

管理台

nsqadmin.exe --lookupd-http-address=127.0.0.1:4161

最后

    NSQ部署真的挺简单....接下来整相关整合...

往期推荐

没有打印日志,如何排查线上问题?——arthas(阿尔萨斯)

怎么样学习java最快?

云原生是什么?(Cloud Native)

JVM-直接内存(Direct Memory)

spring整合各种中间件(RocketMQ、kafka、RabbitMQ、TubeMQ、NSQ)-腾讯开源【TubeMQ】

对象实例化与内存布局(深入)

spring整合各种中间件(RocketMQ、kafka、RabbitMQ、ActiveMQ、ZeroMQ)-ZeroMQ

资深java工程师写mysql表子查询left join导致大事务-线上事故

逃逸分析(Escape Analysis)技术

spring整合中间件(RocketMQ、kafka、RabbitMQ、ActiveMQ、ZeroMQ)ActiveMQ

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值