PHP+Redis 消息队列 实现高并发下注册人数统计的实例


Posted in PHP onJanuary 29, 2018

前言

现在越来越多的网站开始注重统计和用户行为分析,作为网站经常使用的功能,如何让统计性能更加高,这也是我们需要考虑的事情。本篇通过Redis来优化统计功能(以注册人数统计为例)。

传统的统计功能都是直接操作数据库把数据插入表中。这样做,对数据库的性能消耗就会比较大。

思路:

这里我们用到了redis的队列,注册的时候先添加到队列,然后在处理的时候出队,并且把人数添加redis里。

代码:

<?php
//register.php 
$redis = new Redis();
$redis->connect('127.0.0.1',6379);
$i=0;
while(true){
  $i++;
  //假定一直有人在注册
  $redis->rpush("register_success",$i);
}
<?php
//deal.php
$redis = new Redis();
$redis->connect('127.0.0.1',6379);
while (true) {
  //list类型出队操作
  $value = $redis->lpop('register_success');
  if($value){
    echo "deal value : ".$value;
    //自增 添加注册人数统计  如果key不存在 则会初始化为0
    $redis->incr('register_num');
  }else{
    echo "deal finish";
  }
}

以上这篇PHP+Redis 消息队列 实现高并发下注册人数统计的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
写一个用户在线显示的程序
Oct 09 PHP
PHP的FTP学习(三)
Oct 09 PHP
PHP语法速查表
Dec 06 PHP
PHP函数篇之掌握ord()与chr()函数应用
Dec 05 PHP
PHP面向对象——访问修饰符介绍
Nov 08 PHP
PHP获取POST数据的几种方法汇总
Mar 03 PHP
php实现用于计算执行时间的类实例
Apr 18 PHP
CI框架(ajax分页,全选,反选,不选,批量删除)完整代码详解
Nov 01 PHP
php+ajax简单实现全选删除的方法
Dec 06 PHP
详谈PHP中public,private,protected,abstract等关键字的用法
Dec 31 PHP
Yii支持多域名cors原理的实现
Dec 05 PHP
php使用redis的几种常见操作方式和用法示例
Feb 20 PHP
PHP 使用二进制保存用户状态的实例
Jan 29 #PHP
thinkphp3.2.0 setInc方法 源码全面解析
Jan 29 #PHP
Ubuntu上安装yaf扩展的方法
Jan 29 #PHP
PHP实现的防止跨站和xss攻击代码【来自阿里云】
Jan 29 #PHP
php实现的AES加密类定义与用法示例
Jan 29 #PHP
php 判断IP为有效IP地址的方法
Jan 28 #PHP
Laravel中unique和exists验证规则的优化详解
Jan 28 #PHP
You might like
在PHP中使用XML
2006/10/09 PHP
php实现查询百度google收录情况(示例代码)
2013/08/02 PHP
joomla组件开发入门教程
2016/05/04 PHP
Laravel中日期时间处理包Carbon的简单使用
2017/09/21 PHP
PHP实现图片压缩
2020/09/09 PHP
浅谈PHP中的那些魔术常量
2020/12/02 PHP
javascript数组使用调用方法汇总
2007/12/08 Javascript
对JavaScript的eval()中使用函数的进一步讨论
2008/07/26 Javascript
理解Javascript_13_执行模型详解
2010/10/20 Javascript
理解JavaScript中的对象 推荐
2011/01/09 Javascript
基于jquery的滚动鼠标放大缩小图片效果
2011/10/27 Javascript
chrome原生方法之数组
2011/11/30 Javascript
Jquery中使用show()与hide()方法动画显示和隐藏图片
2015/10/08 Javascript
详解Node.js模块间共享数据库连接的方法
2016/05/24 Javascript
jQuery EasyUI提交表单验证
2016/07/19 Javascript
Javascript自定义事件详解
2017/01/13 Javascript
jquery.uploadView 实现图片预览上传功能
2017/08/10 jQuery
JavaScript设计模式之单例模式简单实例教程
2018/07/02 Javascript
JavaScript对象原型链原理详解
2020/02/05 Javascript
vue单元格多列合并的实现
2020/11/26 Vue.js
[42:34]VP vs VG 2018国际邀请赛小组赛BO2 第一场 8.19
2018/08/21 DOTA
python实现按行切分文本文件的方法
2016/04/18 Python
Python编程修改MP3文件名称的方法
2017/04/19 Python
Python实现选择排序
2017/06/04 Python
python3利用Dlib19.7实现人脸68个特征点标定
2018/02/26 Python
利用Python如何批量更新服务器文件
2018/07/29 Python
深入浅析python3中的unicode和bytes问题
2019/07/03 Python
python之pexpect实现自动交互的例子
2019/07/25 Python
如何利用cmp命令比较文件
2013/09/23 面试题
化妆品促销方案
2014/02/24 职场文书
供电工程专业求职信
2014/08/09 职场文书
出纳岗位职责范本
2015/03/31 职场文书
2016秋季小学开学寄语
2015/12/03 职场文书
财务年终工作总结大全
2019/06/20 职场文书
Go标准容器之Ring的使用说明
2021/05/05 Golang
JS中一些高效的魔法运算符总结
2021/05/06 Javascript