nsqadmin】的更多相关文章

nsqlookupd: 官方文档解释见:http://bitly.github.io/nsq/components/nsqlookupd.html 用官方话来讲是:nsqlookupd管理拓扑信息,客户端根据特定的topic查询nsqlookupd来发现nsqd生产者及nsqd广播topic和channel信息.比较难懂,所以接下来,用通俗的话来解释. 首先讲点别的东西,用过linux的同学可能会发现,linux下很多应用,比如apache.mysql.ftp等它们的服务名称都是在d结尾的.如:…
nsqadmin 结构体定义 type Options struct { LogLevel string `flag:"log-level"` LogPrefix string `flag:"log-prefix"` Verbose bool `flag:"verbose"` // for backwards compatibility Logger Logger logLevel lg.LogLevel // private, not real…
以下配置只针对nsqadmin v1.1.0 (built w/go1.10.3)版本 ## The default server# server {    listen       80 default_server;    listen       [::]:80 default_server;    server_name  _;    root         /usr/share/nginx/html; # Load configuration files for the defaul…
转自:http://www.baiyuxiong.com/?p=886 ----------------------------------------------------------------------- 上一篇go语言nsq源码解读-基本介绍  介绍了最基本的nsq环境搭建及使用.在最后使用时,我们用到了几个命令:nsqlookupd.nsqd.nsqadmin.curl及 nsq_to_file,并看到用curl命令写入的几个”hello world”被nsq_to_file命令保…
介绍 NSQ是一个实时的分布式消息平台.它的设计目标是为在多台计算机上运行的松散服务提供一个现代化的基础设施骨架.这篇文章介绍了 基于go语言的NSQ的内部架构,它能够为高吞吐量的网络服务器带来 性能的优化,稳定性和鲁棒性.可以说, 如果不是因为我们在bitly使用go语言,NSQ就不会存在.这里既会讲NSQ的功能也会涉及语言提供的特征.当然,语言会影响思维,这次也不例外.现在回想起来,选择使用go语言已经收到了十倍的回报.由语言带来的兴奋和社区的积极反馈为这个项目提供了极大的帮助. 概要 NS…

nsq

官网:http://nsq.io (1)描述 都是message broker,rabbitmq久经考验,nsq则是后起之秀.rabbitmq是erlang编写,nsq是golang. 安装:https://github.com/nsqio/nsq/releases下载nsq-0.3.8.linux-amd64.go1.6.2.tar.gz,可执行文件copy到bin下:windows拷贝到c:\windows下 参考文档: http://www.cnblogs.com/hclabxing/p/…
NSQ是GO语言开发的可用于大规模系统中的实时消息服务,但是和RabbitMQ等相比,它具有什么特色,什么场景下选择NSQ呢? NSQ的自身特色很明显,最主要的优势在如下三个方面: 1,性能.在多个著名网站生产环境中被采用,每天能够处理数亿级别的消息.参见官方提供的性能说明文档 2,易用性.非常易于部署(几乎没有依赖)和配置(所有参数都可以通过命令行进行配置). 3,可扩展性.具有分布式且无单点故障的拓扑结构,支持水平扩展,在无中断情况下能够无缝地添加集群节点.还具有强大的集群管理界面,参见ns…
一. 安装 参考:http://nsq.io/deployment/installing.htmlhttp://www.baiyuxiong.com/?p=873    (推荐.) 不推荐直接把官方的Binary Releases版本down下来扔bin目录.建议用“Building From Source”方式(看下面的步骤),这样可以把source下到$GOPATH/src里并同时把程序build到$GOPATH/bin里. (然后可以把这个bin目录添加到环境变量$sudo vi /etc…
安装: brew install nsq 使用: The following steps will run a small NSQ cluster on your local machine and walk through publishing, consuming, and archiving messages to disk. follow the instructions in the INSTALLING doc. in one shell, start nsqlookupd: $ n…
一.      简介 NSQ主要有三个主要程序和一个Web服务程序: nsqd:是守护进程,接收,缓存,并投递消息给客户端 nsqlookupd:是一个守护进程,为消费者提供运行时发现服务,来查找指定话题(topic)的生产者 nsqd nsq_to_http:消费指定的话题(topic)/通道(channel)和执行 HTTP requests (GET/POST) 到指定的端点. nsqadmin:是 Web 服务,用来实时的管理你的 NSQ 集群.它通过和 nsqlookupd 实例交流,…
NSQ是一个基于Go语言的分布式实时消息平台,它基于MIT开源协议发布,代码托管在GitHub,其当前最新版本是0.3.1版.NSQ可用于大规模系统中的实时消息服务,并且每天能够处理数亿级别的消息,其设计目标是为在分布式环境下运行的去中心化服务提供一个强大的基础架构.NSQ具有分布式.去中心化的拓扑结构,该结构具有无单点故障.故障容错.高可用性以及能够保证消息的可靠传递的特征.NSQ非常容易配置和部署,且具有最大的灵活性,支持众多消息协议.另外,官方还提供了拆箱即用Go和Python库.如果读者…
一 环境依赖: golang 开发环境(version >= 1.2)          下源码,配置环境变量,执行安装脚本 gpm     依赖包管理器                            ubantu: sudo  apt-get intall gpm 二  NSQ安装: git获取源码: mkdir -p $GOPATH/src/github.com/nsqio;cd $GOPATH/src/github.com/nsqio;git clone https://githu…
用一了段时间NSQ还是很稳定的.除了稳定,还有一个特别值的说的就是部署非常简单.总想写点什么推荐给大家使用nsq来做一些东西.但是就是因为他太简单易用,文档也比较简单易懂.一直不知道要写啥!!!!! nsq官司网: http://nsq.io/ 为了容灾需要对nsqd多机器部属,有了Docker后,快速扩还是很方便的. 部署完后我会用go和c#写一些代码方便大家学习. 准备工作: >两台服务器:192.168.0.49; 192.168.0.105. >需要在两台机器上安装好Docker &g…
回顾: 以前一直是C++开发(客户端),最近听同事讲go语言不错,随后便决定先从go语法开始投向go的怀抱.由于历史原因学习go语法时,用了半天的时间看完了菜鸟教程上相关资料,后来又看了易百教程上的一些实例代码,感觉都比较简单,毕竟还是有C++基础存在的...但是找工作大多都是需要工作经验的,那么怎么办才好呢!后来在知乎上看到有一位大神推荐看NSQ和skynet开源框架,权衡之下我决定从NSQ开始学习,进入我的go学习之路. 要学习NSQ,首先就是上www查找相关NSQ的资料,没想到百度一下相关…
NSQ简介 NSQ 是实时的分布式消息处理平台,其设计的目的是用来大规模地处理每天数以十亿计级别的消息.NSQ 具有分布式和去中心化拓扑结构,该结构具有无单点故障.故障容错.高可用性以及能够保证消息的可靠传递的特征,是一个成熟的.已在大规模生成环境下应用的产品. NSQ 由 3 个守护进程组成: nsqd 是接收.保存和传送消息到客户端的守护进程. nsqlookupd 是管理的拓扑信息,维护着所有nsqd的状态,并提供了最终一致发现服务的守护进程. nsqadmin 是一个 Web UI 来实…
为什么要使用Nsq 最近一直在寻找一个高性能,高可用的消息队列做内部服务之间的通讯.一开始想到用zeromq,但在查找资料的过程中,意外的发现了Nsq这个由golang开发的消息队列,毕竟是golang原汁原味的东西,功能齐全,关键是性能还不错.其中支持动态拓展,消除单点故障等特性,  都可以很好的满足我的需求 下面上一张Nsq与其他mq的对比图,看上去的确强大.下面简单记录一下Nsq的使用方法图片来自golang2017开发者大会 Nsq服务端 Nsq服务端简介 在使用Nsq服务之前,还是有必…
这篇讲另两个文件http.go.http_server.go,这两个文件和第六讲go语言nsq源码解读六 tcp.go.tcp_server.go里的两个文件是相对应的.那两个文件用于处理tcp请求,而这两个是处理http请求的. http_sesrver.go 123456789101112131415161718192021222324 package utilimport (    "log"    "net"    "net/http" …
本节会解读nsqlookupd.go文件中涉及到的其中三个文件:options.go.context.go和wait_group_wrapper.go. options.go 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253 package nsqlookupdimport (    "log"    "os"    &q…
从本节开始,将逐步阅读nsq各模块的代码. 读一份代码,我的思路一般是: 1.了解用法,知道了怎么使用,对理解代码有宏观上有很大帮助. 2.了解各大模块的功能特点,同时再想想,如果让自己来实现这些模块,会是怎么样的思路. 3.开始上手试读,为不打击阅读的积极性,可以选择一个简单的模块,或者某一个功能点开始读.对nsq而言,打开源码的目录看一下,发现nsqlookupd和nsqadmin的代码相对较少,而nsqd的代码量较多.再比较nsqlookupd和nsqadmin,发现nsqadmin下还有…
简单介绍一下nsq. 参考 http://feilong.me/2013/05/nsq-realtime-message-processing-system 的介绍:NSQ是由知名短链接服务商bitly用Go语言开发的实时消息处理系统,具有高性能.高可靠.无视单点故障等优点,是一个非常不错的新兴的消息队列解决方案. nsq易于配置和部署,所有参考都通过命令行指定,编译好的二进制文件,没有其它依赖项.而且支持多种消息格式. 源码下载地址: https://github.com/nsqio/nsq…
前言 最近我再网上寻找使用golang实现的mq,因为我知道golang一般实现的应用部署起来很方便,所以我就找到了一个叫做nsq的mq,其实它并不能完全称为队列,但是它的轻量和性能的高效,让我真的大开眼界. 如果你有兴趣,我觉得也可以了解一下: 网上有人翻译了国外的一篇文章: 我们是如何使用NSQ处理7500亿消息的 安装和部署 官网提供 如果你有能力的话直接阅读官方的说明进行操作就可以了 https://nsq.io/overview/quick_start.html 如果看不懂我还找到了中…
nsqlookupd tcp 4160 http 4161nsqd 4150nsqadmin 4171 1:安装$ brew install nsq1) 停止nsq默认的启动$ brew services stop nsq 2:运行nsqlookupd$ nsqlookupd 3:运行nsqd$ nsqd --lookupd-tcp-address=127.0.0.1:4160 4:运行nsqadmin$ nsqadmin --lookupd-http-address=127.0.0.1:416…
前言 NSQ是一个基于Go语言的分布式实时消息平台,它基于MIT开源协议发布,代码托管在GitHub,其当前最新版本是0.3.1版.NSQ可用于大规模系统中的实时消息服务,并且每天能够处理数亿级别的消息,其设计目标是为在分布式环境下运行的去中心化服务提供一个强大的基础架构.NSQ具有分布式.去中心化的拓扑结构,该结构具有无单点故障.故障容错.高可用性以及能够保证消息的可靠传递的特征.NSQ非常容易配置和部署,且具有最大的灵活性,支持众多消息协议.另外,官方还提供了拆箱即用Go和Python库.如…
首先先在本地将服务跑起来,我用的是docker-compose ,一句话6666 先新建一个docker-compose.yml version: '2' services: nsqlookupd: image: nsqio/nsq command: /nsqlookupd ports: - "192.168.9.111:4160:4160" - "192.168.9.111:4161:4161" nsqd: image: nsqio/nsq command: /n…
为什么要使用Nsq 最近一直在寻找一个高性能,高可用的消息队列做内部服务之间的通讯.一开始想到用zeromq,但在查找资料的过程中,意外的发现了Nsq这个由golang开发的消息队列,毕竟是golang原汁原味的东西,功能齐全,关键是性能还不错.其中支持动态拓展,消除单点故障等特性,  都可以很好的满足我的需求 下面上一张Nsq与其他mq的对比图,看上去的确强大.下面简单记录一下Nsq的使用方法 图片来自golang2017开发者大会 Nsq服务端 Nsq服务端简介 在使用Nsq服务之前,还是有…
退出运行中的程序,可以粗暴的kill -9 $PID,但这样会破坏业务的完整性,有可能一个正在在执行的逻辑半途而费,从而产生不正常的垃圾数据. 本文总结在go语言中,如何能优雅的退出网络应用,涉及的知识包括:signal,channel,WaitGroup等. 从这里:https://gobyexample.com/channel-synchronization 可以简单了解到,在go中如何使用channel实现goroutines同步. 在nsq中,也使用了相同的机制,不过封装更复杂了些.我们…
因为是mac 系统安装试用brew install nsq 安装 brew install nsq 组件说明 nsqd 守护进程进行消息的接受,缓存以及传递消息给客户端,需要配置nsqlookupd地址 nsqlookupd 守护进程,启动服务的发现,为消息者提供查找nsqd 生产者指定的topic nsqadmin 一个可视化界面,方便进行nsq 的管理以及监控 启动 nsqlookupd nsqlookupd nsqd nsqd --lookupd-tcp-address=127.0.0.1…
NSQ是一个基于Go语言的分布式实时消息平台,它基于MIT开源协议发布,代码托管在GitHub.NSQ可用于大规模系统中的实时消息服务,并且每天能够处理数亿级别的消息,其设计目标是为在分布式环境下运行的去中心化服务提供一个强大的基础架构. NSQ具有分布式.去中心化的拓扑结构,该结构具有无单点故障.故障容错.高可用性以及能够保证消息的可靠传递的特征.NSQ非常容易配置和部署,且具有最大的灵活性,支持众多消息协议.另外,官方还提供了拆箱即用Go和Python库.如果读者兴趣构建自己的客户端的话,还…
什么是nsq?请参考实时分布式消息平台nsq. 本地如何搭建nsq?请参考本地搭建nsq经验分享. 从NSQ的设计文档中得知,单个nsqd被设计为一次能够处理多个流数据,NSQ中的数据流模型是由stream和consumer组成.Topic是一种独特的stream,Channel是一个订阅了给定Topic的consumer逻辑分组.NSQ的数据流模型结构如下图所示: 从上图可以看出,单个nsqd可以有多个Topic,每个Topic又可以有多个Channel.Channel能够接收Topic所有消…
Nsq服务端简介 在使用Nsq服务之前,还是有必要了解一下Nsq的几个核心组件整个Nsq服务包含三个主要部分 nsqlookupd 先看看官方的原话是怎么说:nsqlookupd是守护进程负责管理拓扑信息.客户端通过查询 nsqlookupd 来发现指定话题(topic)的生产者,并且 nsqd 节点广播话题(topic)和通道(channel)信息 简单的说nsqlookupd就是中心管理服务,它使用tcp(默认端口4160)管理nsqd服务,使用http(默认端口4161)管理nsqadmi…