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 相关文章推荐
隐藏X-Space个人空间下方版权方法隐藏X-Space个人空间标题隐藏X-Space个人空间管理版权方法
Feb 22 PHP
Discuz 6.0+ 批量注册用户名
Sep 13 PHP
PHP中获取文件扩展名的N种方法小结
Feb 27 PHP
用来解析.htgroup文件的PHP类
Sep 05 PHP
php格式输出文件var_export函数实例
Nov 15 PHP
php魔术函数__call()用法实例分析
Feb 13 PHP
php为字符串前后添加指定数量字符的方法
May 04 PHP
PHP上传图片类显示缩略图功能
Jun 30 PHP
php动态读取数据清除最右边距的方法
Apr 12 PHP
php 截取中英文混合字符串的方法
May 31 PHP
Laravel框架实现调用百度翻译API功能示例
May 30 PHP
PHP框架实现WebSocket在线聊天通讯系统
Nov 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
超人钢铁侠联手合作?美漫作家呼吁DC漫威合作联动以抵抗疫情
2020/04/09 欧美动漫
PHP session常见问题集锦及解决办法总结
2007/03/18 PHP
php5.5中类级别的常量使用介绍
2013/10/02 PHP
PHP实现服务器状态监控的方法
2014/12/09 PHP
WordPress的文章自动添加关键词及关键词的SEO优化
2016/03/01 PHP
PHP时间戳格式全部汇总 (获取时间、时间戳)
2016/06/13 PHP
PHP序列化和反序列化深度剖析实例讲解
2020/12/29 PHP
网页里控制图片大小的相关代码
2006/06/13 Javascript
jquery判断字符输入个数(数字英文长度记为1,中文记为2,超过长度自动截取)
2010/10/15 Javascript
jQuery 一个图片切换的插件
2011/10/09 Javascript
jQuery操作DOM之获取表单控件的值
2015/01/23 Javascript
jQuery中 attr() 方法使用小结
2015/05/03 Javascript
JavaScript制作淘宝星级评分效果的思路
2020/06/23 Javascript
jQuery Easy UI中根据第一个下拉框选中的值设置第二个下拉框是否可以编辑
2016/11/29 Javascript
JS计算两个数组的交集、差集、并集、补集(多种实现方式)
2019/05/21 Javascript
[01:02:18]VGJ.S vs infamous Supermajor 败者组 BO3 第一场 6.4
2018/06/05 DOTA
Python字符遍历的艺术
2008/09/06 Python
Python自动化部署工具Fabric的简单上手指南
2016/04/19 Python
Python 合并多个TXT文件并统计词频的实现
2019/08/23 Python
如何利用python读取micaps文件详解
2020/10/18 Python
Jupyter Notebook 远程访问配置详解
2021/01/11 Python
css3实现一个div设置多张背景图片及background-image属性实例演示
2017/08/10 HTML / CSS
VICHY薇姿俄罗斯官方网上商店:法国护肤品牌,火山温泉水
2019/11/22 全球购物
大学生就业推荐信范文
2013/11/29 职场文书
大学生毕业的自我评价分享
2014/01/02 职场文书
生物制药专业求职信
2014/03/11 职场文书
实习单位鉴定评语
2014/04/26 职场文书
大学专科求职信
2014/07/02 职场文书
协商一致解除劳动合同协议书
2014/09/14 职场文书
学生吸烟检讨书
2014/09/14 职场文书
设立有限责任公司出资协议书
2014/11/01 职场文书
九华山导游词
2015/02/03 职场文书
奖学金申请个人主要事迹材料
2015/11/04 职场文书
如何利用JavaScript实现二叉搜索树
2021/04/02 Javascript
一行代码python实现文件共享服务器
2021/04/22 Python
教你用python实现一个无界面的小型图书管理系统
2021/05/21 Python