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实现框架(二)
Oct 09 PHP
php 常用字符串函数总结
Mar 15 PHP
JS 网站性能优化笔记
May 24 PHP
PHP生成随机密码类分享
Jun 25 PHP
smarty模板引擎从配置文件中获取数据的方法
Jan 22 PHP
php查询mysql数据库并将结果保存到数组的方法
Mar 18 PHP
php中实现可以返回多个值的函数实例
Mar 21 PHP
基于PHP给大家讲解防刷票的一些技巧
Nov 18 PHP
PHP+Apache+Mysql环境搭建教程
Aug 01 PHP
PHP对象相关知识总结
Apr 09 PHP
Laravel核心解读之异常处理的实践过程
Feb 24 PHP
解决laravel查询构造器中的别名问题
Oct 17 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
让你同时上传 1000 个文件 (二)
2006/10/09 PHP
浅析PHP程序设计中的MVC编程思想
2014/07/28 PHP
javascript数组与php数组的地址传递及值传递用法实例
2015/01/22 PHP
使用WordPress发送电子邮件的相关PHP函数用法解析
2015/12/15 PHP
PHP进程通信基础之信号
2017/02/19 PHP
PHP mongodb操作类定义与用法示例【适合mongodb2.x和mongodb3.x】
2018/06/16 PHP
浅谈Laravel POST,PUT,PATCH 路由的区别
2019/10/15 PHP
图片自动更新(说明)
2006/10/02 Javascript
用js得到网页中所有的div的id
2020/10/19 Javascript
用showModalDialog弹出页面后,提交表单总是弹出一个新窗口
2009/07/18 Javascript
jquery实现弹出窗口效果的实例代码
2013/11/28 Javascript
动态创建script在IE中缓存js文件时导致编码的解决方法
2014/05/04 Javascript
jQuery版AJAX简易封装代码
2016/09/14 Javascript
解决Window10系统下Node安装报错的问题分析
2016/12/13 Javascript
Bootstrap中glyphicons-halflings-regular.woff字体报404错notfound的解决方法
2017/01/19 Javascript
JavaScript30 一个月纯 JS 挑战中文指南(英文全集)
2017/07/23 Javascript
原生JS与jQuery编写简单选项卡
2017/10/30 jQuery
JS实现简单的星期格式转换功能示例
2018/07/23 Javascript
LayerClose弹窗关闭刷新方法
2018/08/17 Javascript
jQuery轻量级表单模型验证插件
2018/10/15 jQuery
原生javascript单例模式的应用实例分析
2020/02/23 Javascript
使用nodejs实现JSON文件自动转Excel的工具(推荐)
2020/06/24 NodeJs
JS判断数组是否包含某元素实现方法汇总
2020/06/24 Javascript
[40:17]2018DOTA2亚洲邀请赛 4.5 淘汰赛 LGD vs Liquid 第一场
2018/04/06 DOTA
Python3基础之基本数据类型概述
2014/08/13 Python
Python3通过Luhn算法快速验证信用卡卡号的方法
2015/05/14 Python
Python计算三角函数之asin()方法的使用
2015/05/15 Python
python基础教程项目二之画幅好画
2018/04/02 Python
Python文件操作及内置函数flush原理解析
2020/10/13 Python
Engel & Bengel官网:婴儿推车、儿童房家具和婴儿设备
2019/12/28 全球购物
C语言面试题
2015/10/30 面试题
如何用Java判断一个文件或目录是否存在
2012/11/19 面试题
反邪教标语
2014/06/23 职场文书
中国文明网向国旗敬礼活动精彩寄语2014
2014/09/27 职场文书
孔子观后感
2015/06/08 职场文书
深入理解python多线程编程
2021/04/18 Python