redis php 队列开发
2017-06-12 17:12
274 查看
目前使用的list实现的队列
其中有几个关键点记录一下
//阻塞获取,默认等待3秒,如果没有那么循环一次
$result =
$model->brPop($QUEUENAME, 3);
使用此方式可以防止快速多次扫描redis
if(function_exists("pcntl_signal"))
{
declare(ticks = 1);
pcntl_signal(SIGTERM,"signal");
pcntl_signal(SIGINT,"signal");
pcntl_signal(SIGINT,"signal");
function
signal($signo) {
global $RUNNING_FLAG;
switch ($signo) {
case SIGINT:
case SIGKILL:
case SIGTERM:
if($RUNNING_FLAG){
//第一次接收到,那么等执行完毕退出
$RUNNING_FLAG=false;
echo "first time close.. \r\n";
}else{
//第二次接收到,直接退出
echo "shutdown ...\r\n";
其中有几个关键点记录一下
//阻塞获取,默认等待3秒,如果没有那么循环一次
$result =
$model->brPop($QUEUENAME, 3);
使用此方式可以防止快速多次扫描redis
if(function_exists("pcntl_signal"))
{
declare(ticks = 1);
pcntl_signal(SIGTERM,"signal");
pcntl_signal(SIGINT,"signal");
pcntl_signal(SIGINT,"signal");
function
signal($signo) {
global $RUNNING_FLAG;
switch ($signo) {
case SIGINT:
case SIGKILL:
case SIGTERM:
if($RUNNING_FLAG){
//第一次接收到,那么等执行完毕退出
$RUNNING_FLAG=false;
echo "first time close.. \r\n";
}else{
//第二次接收到,直接退出
echo "shutdown ...\r\n";
相关文章推荐
- php tp 框架下 redis 队列&&加锁
- redis php sort 函…
- Centos 下配置PHP开发环境
- Sublime PHP开发中选取$
- Dora-RPC 端午升级 PHP微服务开发…
- 8 个必备的PHP功能开发
- PHP 操作redis 封装的类… 2016年03月04日 09:59:01 289人阅读 评论
- phpredis protocol erro…
- redis和 redis的php扩展
- redis 中关于php的client端
- 2013年初次接触PHP网站快速开发(2):php嵌入 对页面及浏览器实际效果的影响
- Drupal 模块开发实例之一:表单的…
- Drupal 模块开发基本教程(一)
- uchome二次开发 - 研究uchome通用…
- PHP + MySQL 分表减低数据库压力
- PHP 时间 时区设置 方法
- PHP substr(),mb_substr()及mb_str…
- PHP 目录操作
- php 处理二维数组(去除重复项,排…
- PHP 序列化(serialize)格式详解