55 Star 124 Fork 30

FloatX / PHP Redis Queue

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README

#PHP Redis Queue

这是一个可以扩展的队列处理程序,没有使用框架。我们的项目使用Yii的框架,所有这里的测试示例就按照Yii的方式来编写的。

###简要设计思路

  1. 存入的将数据分散到64个Redis的list中去,这样是便于扩展机器来提高负载
  2. 后台运行一个PHP主进程,分别fork 64个子进程去对应处理 64个list中的数据。
  3. 主进程要监控子进程状态,在子进程正常或意外结束后及时重新开启对应子进程。

###现状 在我们项目中已经使用一年多,性能和稳定性方面都表现的很不错。 目前是单机运行64个进程,因为单机处理效率已经能够满足需求,就没有在处理程序这个理做更多分布式开发了。

#开发与使用

使用上参考 test/QueueCommand.php 主要是3个命令:start,stop,restart 非Yii框架参考这个文件编写代码即可。 test/queue_config.php 是配置文件,使用前请先看看。

###设置配置文件路径

// Yii 这样配置:
Yii::app()->params->queueConfig;

// 通用的配置方式:
QueueConfig::$configPath = '/data/www/test/queue_config.php';

###开发自己的worker处理程序 参考 src/worker/CWorkerForYii.php 从CWorker继承,然后实现相应的方法即可。 当然,你需要在配置文件中配置你的类文件名称:'WORKER'=> 'CWorkerForYii',

空文件

简介

PHP+Redis 的队列处理程序 展开 收起
PHP
取消

发行版

暂无发行版

贡献者

全部

近期动态

加载更多
不能加载更多了
PHP
1
https://gitee.com/664712890/PHP-Redis-Queue.git
git@gitee.com:664712890/PHP-Redis-Queue.git
664712890
PHP-Redis-Queue
PHP Redis Queue
master

搜索帮助

14c37bed 8189591 565d56ea 8189591