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 相关文章推荐
PHP setcookie() cannot modify header information 的解决方法
Jan 09 PHP
php 分页函数multi() discuz
Jun 21 PHP
php+ajax做仿百度搜索下拉自动提示框(有实例)
Aug 21 PHP
深入file_get_contents与curl函数的详解
Jun 25 PHP
利用浏览器的Javascript控制台调试PHP程序
Jan 08 PHP
php通过array_shift()函数移除数组第一个元素的方法
Mar 18 PHP
PHP经典面试题集锦
Mar 19 PHP
php文件下载处理方法分析
Apr 22 PHP
windows下apache搭建php开发环境
Aug 27 PHP
php时间函数用法分析
May 28 PHP
PHP中ID设置自增后不连续的原因分析及解决办法
Aug 21 PHP
PDO实现学生管理系统
Mar 21 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
thinkPHP实现表单自动验证
2014/12/24 PHP
PHP hebrev()函数用法讲解
2019/02/21 PHP
浅谈php的TS和NTS的区别
2019/03/13 PHP
jquery绑定原理 简单解析与实现代码分享
2011/09/06 Javascript
jsp+javascript打造级连菜单的实例代码
2013/06/14 Javascript
javascript列表框操作函数集合汇总
2013/11/28 Javascript
jquery清空表单数据示例分享
2014/02/13 Javascript
node.js中的fs.chownSync方法使用说明
2014/12/16 Javascript
AngularJS的依赖注入实例分析(使用module和injector)
2017/01/19 Javascript
vue2.0数据双向绑定与表单bootstrap+vue组件
2017/02/27 Javascript
jquery.flot.js简单绘制折线图用法示例
2017/03/13 Javascript
详解Webpack多环境代码打包的方法
2018/08/03 Javascript
vue中v-for通过动态绑定class实现触发效果
2018/12/06 Javascript
JS中超越现实的匿名函数用法实例分析
2019/06/21 Javascript
使用ThinkJs搭建微信中控服务的实现方法
2019/08/08 Javascript
如何在JavaScript中创建具有多个空格的字符串?
2020/02/23 Javascript
vue.js中使用微信扫一扫解决invalid signature问题(完美解决)
2020/04/11 Javascript
Vue实现多页签组件
2021/01/14 Vue.js
python通过zlib实现压缩与解压字符串的方法
2014/11/19 Python
Python中字典和JSON互转操作实例
2015/01/19 Python
利用标准库fractions模块让Python支持分数类型的方法详解
2017/08/11 Python
python+pyqt实现右下角弹出框
2017/10/26 Python
用pycharm开发django项目示例代码
2019/06/13 Python
python将字符串list写入excel和txt的实例
2019/07/20 Python
python等差数列求和公式前 100 项的和实例
2020/02/25 Python
卸载tensorflow-cpu重装tensorflow-gpu操作
2020/06/23 Python
Python logging日志模块 配置文件方式
2020/07/12 Python
Stylenanda中文站:韩国一线网络服装品牌
2016/12/22 全球购物
英国家庭和商业健身器材购物网站:Fitness Options
2018/07/05 全球购物
全球最大的生存食品、水和装备专用在线市场:BePrepared.com
2020/01/02 全球购物
Chemist Warehouse中文网:澳洲连锁大药房
2021/02/05 全球购物
初二生物教学反思
2014/02/03 职场文书
文秘大学生求职信
2014/02/25 职场文书
荷叶母亲教学反思
2014/04/30 职场文书
老干部工作先进集体事迹材料
2014/05/21 职场文书
只用40行Python代码就能写出pdf转word小工具
2021/05/31 Python