文档章节

Supervisor分布式

tonyzheng007
 tonyzheng007
发布于 2014/06/11 08:33
字数 461
阅读 187
收藏 0

##安装php5-xmlrpc扩展 sudo apt-get install php5-xmlrpc

##安装supervisor_twiddler sudo pip install -U supervisor_twiddler supervisor_twiddler这个包是supervisor的RPC的扩展,它允许supervisor的配置和状态在运行时可以被操纵

pip是python的包管理工具,如果没有装pip,可用sudo apt-get install python-pip进行安装

##配置supervisor 往supervisor.conf中加入下列 [rpcinterface:twiddler] supervisor.rpcinterface_factory = supervisor_twiddler.rpcinterface:make_twiddler_rpcinterface

改变supervisor.sock的权限,将默认的 [unix_http_server] file=/var/run/supervisor.sock ; (the path to the socket file) chmod=0700 ; sockef file mode (default 0700) 改为 [unix_http_server] file=/var/run/supervisor.sock ; (the path to the socket file) chmod=0766 ; sockef file mode (default 0700)

##配置config.php

  • define('REPO_PATH', '{repo_path}'); 代码路径,例如 : /var/www/campaign-portal
  • define('SUPERVISOR_SOCK', '{supervisor_sock}'); supervisor的sock地址,在supervisor.conf中supervisorctl块可以找到
  • define('SUPERVISOR_CONF', '{supervisor_conf}'); 生成work的配置文件地址,例如 : /etc/supervisor/conf.d/campaignportal.conf,同时需要更改这个文件的权限为777,使用命令sudo chmod 777 {supervisor_conf}
  • define('GROUP_NAME', '{group_name}'); 在{supervisor_conf}的文件末尾加上 [group:{group_name}] programs:{program_name}

##添加worker 进入目录{repo_path}/src/protected/ 输入命令php yiic resque addProgram --queue="email" --count=6 其中--queue表示监听的队列名, --count表示添加的worker的个数

##删除worker 进入目录{repo_path}/src/protected/ 输入命令`php yiic resque removeProgram --reserve=3 --queue="email" 其中--reserve表示保留的worker的个数, --queue可以指定队列名,若指定则表示保留监听队列{queue_name}的worker个数,若不指定--queue则默认表示所有队列

##测试发送邮件 分别用单台机器1个worker发送100条邮件,单台机器10个worker发送100条邮件,两台机器各10个worker发送100条邮件 (当用两台机器发送时,需将redis的地址配置成同一台机器即可) 测试结果: 单机器1worker耗时: 25s 单机器10worker耗时: 7s 两机器各10worker耗时: 4s

© 著作权归作者所有

共有 人打赏支持
tonyzheng007
粉丝 1
博文 6
码字总数 948
作品 0
浦东
程序员
1、storm的安装

1:在一台机器上安装,然后拷贝到其他机器上即可,分布式软件的安装都是这个套路,软件包和配置文件都是一样的,只是启动的时候,启动不同的模块就行了。 1、解压tar.gz包到指定目录 tar -z...

刘付kin
2016/12/04
15
0
Apache Storm 0.9.4 发布,分布式实时计算

Apache Storm 0.9.4 发布了,这是一个维护版本,主要是一些重要的 bug 修复,提升了稳定性和容错,建议用户升级。 该版本改进内容包括: STORM-559: ZkHosts in README should use 2181 as ...

oschina
2015/03/27
2.1K
6
elixir官方教程Mix与OTP(九) 分布式任务与配置

分布式任务与配置 我们的第一个分布式代码 同步/等待 分布式任务 路由层 测试过滤器与标签 应用环境与配置 总结 本章,我们将回到应用并添加一个路由层,它能让我们根据桶名来在节点之间分布请...

ljzn
2016/08/12
37
0
Linux下MongoDB服务安装

Linux下MongoDB服务安装 MongoDB是一个基于分布式文件存储的数据库。由C++语言编写。旨在为WEB应用提供可扩展的高性能数据存储解决方案。MongoDB是一个介于关系数据库和非关系数据库之间的产...

OneTODO
2016/11/01
9
0
storm (imooc)

分布式系统 当数据量大,且增长量很快时,把一个任务分给多个计算机去共同完成的计算机系统叫分布式系统。对外屏蔽多机的细节,只留一个对外接口 批处理(Hadoop)与流处理(storm) Storm原...

analanxingde
2017/06/21
0
0

没有更多内容

加载失败,请刷新页面

加载更多

js 操作cookie

var cookie = {// 设置cookie方法set:function(key, val, time){// 获取当前时间var date = new Date();// 将date设置为n天以后的时间var expiresDays = time;//...

小丶二
14分钟前
1
0
限制root远程登录 su和sudo命令

9月21日任务 3.7 su命令 3.8 sudo命令 3.9 限制root远程登录 对于Linux而言,权限的重要性毋庸置疑!对于普通用户而言无法执行那些只有root用户才能有效的命令,导致工作无法有效进行; 系统...

robertt15
16分钟前
2
0
MQTT协议的初浅认识之通讯级别和持久会话

背景 这是我最近了解MQTT协议的最后一部分内容了,MQTT协议里面的QOS和Keep Alive是两个比较重要的内容。QOS的设置,直接影响了订阅客户端与中间件之间的消息交互行为。而Keep Alive直接影响...

亚林瓜子
18分钟前
1
0
calc

width: calc(100% - 30px); 特别注意:减号左右空格,均不能去掉。 width: calc(100% - 30px);

柴高八斗之父
26分钟前
1
0
Spring Cloud Gateway全局过滤器GlobalFilter:返回消息和重定向

Spring Cloud Gateway的全局过滤器GlobalFilter,顾名思义,声明后会对所有的请求生效,可以用来做权限控制,这里简单记录一下拦截到非法请求后如何返回自定义信息和将请求重定向到指定URL。...

夜雨寄北09
29分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部