redis投票计数
2015-08-20 13:10
706 查看
<?php /** * * 缓存利用测试,这里我们获取传过来的投票数据,每次加1,如果增加到了设定值,才将投票 * 次数写回mysql,这大大减轻了与mysql链接的开销,redis的使用由此可见一斑 * @var unknown_type * @来自:www.crazyant.net和www.51projob.com */ //获取投票的信息的ID $aid = isset($_GET['aid']) ? ereg_replace("[^0-9]", "", $_GET['aid']) : 0; //当前投票的数字,指的是在redis中的数据 $this_click_num = 0; if($aid>2){ //设定写回的投票数的最大值,到了此值就写回mysql $update_till_num = 50; //创建redis对象 $r = new Redis(); $r->connect('127.0.0.1',6379); //得到现在是第几个数据了 $this_click_num = $r->get('count_xin_newgame:'.$aid); //点击数加1 $r->set('count_xin_newgame:'.$aid,$this_click_num+1); if($this_click_num>=$update_till_num) { //如果点击数超过了设定数,那么就把数据写到mysql if($this_click_num>$update_till_num) require_once(dirname(__FILE__)."/db.php"); //更新数据库 $db->ExecuteNoneQuery( "UPDATE `addonnewgame` SET `game_num` = game_num + '{$update_till_num}' WHERE `dede_addonnewgame`.`aid` ={$aid};" ); //重置投票数目为0 $r->set('count_xin_newgame:'.$aid,0); } $r->setTimeout('count_xin_newgame:'.$aid,7*24*60*60); exit($this_click_num); } ?>
相关文章推荐
- redis3.0集群说明与搭建
- 【转】windows下编译和安装redis
- 清除redis中所有数据
- windows下redis的安装以及使用
- Redis 简介
- Linux下Redis启动/关闭/重启服务脚本
- redis:set数据类型和操作
- Redis Cluster 在PHP上的实践
- 征服 Redis + Jedis
- Redis应用场景
- redis:hash数据类型与操作
- redis常用命令、常见错误、配置技巧等分享
- Linux下Redis3.0.3的部署和启动笔记
- Celery、flower和celery-redis 的安装与使用
- Redis
- Redis Java连接操作
- Linux下安装Redis应用
- Linux下Redis启动/关闭/重启服务脚本
- centos6.6 安装redis 3.0.3
- redis配置文件redis.conf详细说明