NSQ服务器及PHP客户端搭建

标签: php go语言 服务器 nsq
473人阅读 评论(0) 收藏 举报
分类:

NSQ服务器及PHP客户端搭建

在对比了市面上多款消息队列之后,基于我们研发团队的现状,我决定选用nsq作为我们的消息队列。其最吸引我的特性倒并非是高并发,水平扩展;而是支持HTTP请求,使用简单。然而NSQ的文档不够详尽,社区不够活跃的问题真让我耗费了很长时间才搞定。

GOLANG安装:

NSQ基于GO语言,先安装Go,问题不大,注意与NSQ要求的版本相适应,我选用的go1.9

下载标准安装包
    https://golang.org/dl/

解压到/usr/local目录

$ sudo tar -xzvf go1.5.2.linux-amd64.tar.gz /usr/local

在$HOME目录下创建文件夹gopath

$ vi /etc/profile 

在 /etc/profile 添加如下内容

export GOPATH=$HOME/gopath
export PATH=$PATH:/usr/local/go/bin:$GOPATH/bin

然后我们刷新环境变量

$ source /etc/profile

最后我们验证一下是否安装成功

$ go version

NSQ安装:

直接下载官网安装包

$ wget https://s3.amazonaws.com/bitly-downloads/nsq/nsq-1.0.0-compat.linux-amd64.go1.8.tar.gz
$ sudo tar -xzvf nsq-1.0.0-compat.linux-amd64.go1.8.tar.gz
$ sudo mv nsq-1.0.0-compat.linux-amd64.go1.8 /usr/local/nsq
$ cd /usr/local/nsq

NSQ启动:

NSQ需要主要启动三个模块nsqd nsqlokkupd nsqadmin

$ nohup ./nsqlookupd &
$ nohup ./nsqd --lookupd-tcp-address=127.0.0.1:4160 --broadcast-address=139.196.205.* &

这一步就是官方文档坑爹的地方,不加上–broadcast-address=139.196.205.* 客户端是无法连接的 后面的IP是你的实际的服务器IP

$ nohup ./nsqadmin --lookupd-http-address=127.0.0.1:4161 &

此时打开139.196.205.*:4161 会看到NSQadmin的web界面

创建一个topic

$ curl -d 'hello world 1' 'http://127.0.0.1:4151/pub?topic=test'

持久化

$ nohup ./nsq_to_file --topic=test --output-dir=/tmp --lookupd-http-address=127.0.0.1:4161 &

持续推送消息

$ curl -d 'hello world 2' 'http://127.0.0.1:4151/pub?topic=test'
$ curl -d 'hello world 3' 'http://127.0.0.1:4151/pub?topic=test'
查看评论

PHP中Yii2框架的使用及项目实战

-
  • 1970年01月01日 08:00

windows下学习nsq,以及基本使用概念

一、安装: 官网: http://nsq.io/overview/quick_start.html 中文版文档: http://wiki.jikexueyuan.com/project/nsq-gui...
  • wangchaoxiaoban
  • wangchaoxiaoban
  • 2017-07-24 19:43:09
  • 678

nsq 优秀的消息队列

简介NSQ是Go语言编写的,开源的分布式消息队列中间件,其设计的目的是用来大规模地处理每天数以十亿计级别的消息。NSQ 具有分布式和去中心化拓扑结构,该结构具有无单点故障、故障容错、高可用性以及能够保...
  • kk936321732
  • kk936321732
  • 2018-01-18 19:22:09
  • 197

NSQ服务器及PHP客户端搭建

NSQ服务器及PHP客户端搭建在对比了市面上多款消息队列之后,基于我们研发团队的现状,我决定选用nsq作为我们的消息队列。其最吸引我的特性倒并非是高并发,水平扩展;而是支持HTTP请求,使用简单。然而...
  • qq_33649725
  • qq_33649725
  • 2017-08-09 11:40:53
  • 473

NSQ的安装运行以及编程实践

NSQ的安装运行以及编程实践 配置Golang环境 下载标准安装包 https://golang.org/dl/ 解压到/usr/local目录sudo ta...
  • black_OX
  • black_OX
  • 2016-09-14 11:45:28
  • 2457

nsq安装及初探

文章内容本文主要根据官方文档进行NSQ安装以及测试: 官方文档网址: http://nsq.io/overview/quick_start.html 系统说明:windows 64位过程1. n...
  • bcfdsagbfcisbg
  • bcfdsagbfcisbg
  • 2017-08-15 16:03:09
  • 530

nsq topic和channel的区别

http://www.baiyuxiong.com/?p=960 topic:一个可供订阅的话题。 channel:属于topic的下一级,一个topic可以有多个channel。...
  • leonpengweicn
  • leonpengweicn
  • 2017-01-06 17:21:17
  • 806

nsq源码阅读 nsqd源码一 apps/nsqd/nsqd.go

之前已经将NSQ的nsqlookupd模块源码大致的看了一遍了,现在开始阅读nsqd模块的源码。作为NSQ的核心模块,代码量也相对多点。废话不多说,开始读代码。 首先从mai()方法开始: fun...
  • aslackers
  • aslackers
  • 2017-05-24 18:19:53
  • 789

php-web开发中的缓存

开发中的缓存缓存的作用:减少内存,cpu资源的消耗缓存中需要关注的问题:1 缓存命中率 2 缓存的更新策略 3 缓存单条数据的最大值 4 缓存总量的大小 客户端缓存,http协议中使用缓存HTML M...
  • cabing2005
  • cabing2005
  • 2016-12-14 17:03:11
  • 756

NSQ数据流模型结构简介

本文主要介绍NSQ数据流模型结构,主要包含: 流程图 流程介绍 一、流程图二、流程简介 NSQ中的数据流模型是由streams和consumers组成的tree。 topic(以下也称为话题...
  • bcfdsagbfcisbg
  • bcfdsagbfcisbg
  • 2017-08-14 22:42:20
  • 157
    个人资料
    等级:
    访问量: 453
    积分: 14
    排名: 227万+
    文章分类
    文章存档