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中可能用来加密字符串的函数[base64_encode、urlencode、sha1]
Jan 16 PHP
解析php中const与define的应用区别
Jun 18 PHP
php图像处理函数大全(推荐收藏)
Jul 11 PHP
destoon整合UCenter图文教程
Jun 21 PHP
php获取从html表单传递数组的方法
Mar 20 PHP
简单了解PHP编程中数组的指针的使用
Nov 30 PHP
YII Framework框架教程之使用YIIC快速创建YII应用详解
Mar 15 PHP
php自定义函数实现汉字转换utf8编码的方法
Sep 29 PHP
PHP中overload与override的区别
Feb 13 PHP
PHP实现的多维数组排序算法分析
Feb 10 PHP
laravel中Redis队列监听中断的分析
Sep 14 PHP
PHP文件操作简单介绍及函数汇总
Dec 11 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
AM/FM收音机的安装与调试
2021/03/02 无线电
PHP教程之PHP中shell脚本的使用方法分享
2012/02/23 PHP
浅析虚拟主机服务器php fsockopen函数被禁用的解决办法
2013/08/07 PHP
PHP解码unicode编码的中文字符代码分享
2014/08/13 PHP
crontab无法执行php的解决方法
2016/01/25 PHP
Laravel实现定时任务的示例代码
2017/08/10 PHP
PHP实现对数字分隔加千分号的方法
2019/03/18 PHP
javascript基础知识大集锦(二) 推荐收藏
2011/01/13 Javascript
javascript 拖动表格行实现代码
2011/05/05 Javascript
jquery中change()用法实例分析
2015/02/06 Javascript
JavaScript将字符串转换成字符编码列表的方法
2015/03/19 Javascript
使用jQuery给input标签设置默认值
2016/06/20 Javascript
深入理解Node.js 事件循环和回调函数
2016/11/02 Javascript
JavaScript 监控微信浏览器且自带返回按钮时间
2016/11/27 Javascript
通过sails和阿里大于实现短信验证
2017/01/04 Javascript
Javascript快速实现浏览器系统通知
2017/08/26 Javascript
你可能不知道的CORS跨域资源共享
2019/03/13 Javascript
pm2发布node配置文件ecosystem.json详解
2019/05/15 Javascript
Vue-cli3.x + axios 跨域方案踩坑指北
2019/07/04 Javascript
layer.open回调获取弹出层参数的实现方法
2019/09/10 Javascript
Python中的sort()方法使用基础教程
2017/01/08 Python
基于python爬虫数据处理(详解)
2017/06/10 Python
Python爬虫工程师面试问题总结
2018/03/22 Python
用 Python 连接 MySQL 的几种方式详解
2018/04/04 Python
Pycharm 2020年最新激活码(亲测有效)
2020/09/18 Python
解决matplotlib.pyplot在Jupyter notebook中不显示图像问题
2020/04/22 Python
使用python操作lmdb对数据读取的实例
2020/12/11 Python
详解matplotlib绘图样式(style)初探
2021/02/03 Python
汤米巴哈马官方网站:Tommy Bahama
2017/05/13 全球购物
2014年百日安全生产活动总结
2014/05/04 职场文书
优秀的个人求职信范文
2014/05/09 职场文书
乡镇干部个人对照检查材料(群众路线)
2014/09/26 职场文书
党员四风问题个人对照检查材料
2014/10/26 职场文书
2016党校培训心得体会
2016/01/07 职场文书
python分分钟绘制精美地图海报
2022/02/15 Python
python 镜像环境搭建总结
2022/09/23 Python