当前位置: 首页 > news >正文

果洛州wap网站建设公司品牌网站建设新闻

果洛州wap网站建设公司,品牌网站建设新闻,苏州网络推广营销公司,做网站怎么申请百度推广来源 | http://suo.im/5EWN3k今天#xff0c;看下签到功能怎么选择#xff1f;现在的网站和app开发中#xff0c;签到是一个很常见的功能#xff0c;如微博签到送积分#xff0c;签到排行榜~微博签到如移动app #xff0c;签到送流量等活动#xff0c;移动app签到用户签… 来源 | http://suo.im/5EWN3k今天看下签到功能怎么选择现在的网站和app开发中签到是一个很常见的功能如微博签到送积分签到排行榜~微博签到如移动app 签到送流量等活动移动app签到用户签到是提高用户粘性的有效手段用的好能事半功倍下面我们从技术方面看看常用的实现手段一. 方案1直接存到数据库MySQL用户表如下last_checkin_time 上次签到时间checkin_count 连续签到次数记录每个用户签到信息签到流程1.用户第一次签到last_checkin_time time()checkin_count12.用户非第一次签到且当天已签到什么也不做返回已签到。3.用户非第一次签到且当天还未签到a.昨天也有签到last_checkin_time time()checkin_count checkin_count1b.昨天没有签到last_checkin_time time()checkin_count1使用yii实现的代码如下//0点$today_0 strtotime(date(y-m-d));//昨天0点$yesterday_0 $today_0-24*60*60;$last_checkin_time $model-last_checkin_time;if(empty($last_checkin_time)){ //first checkin $model-last_checkin_time time(); $model-checkin_count 1;  }else{ if($today_0 $last_checkin_time){  //checkin ed 当天已签到过  return json_encode([code 0, msg 已签到成功]); } //昨天签到过 if($last_checkin_time $today_0 $last_checkin_time $yesterday_0){  $model-last_checkin_time time();  $model-checkin_count $model-checkin_count 1; }else{  //昨天没签到过重新计数  $model-last_checkin_time time();  $model-checkin_count 1; }}$rs $model-save();二. 方案2redis实现方案使用bitmap来实现bitmap是redis 2.2版本开始支持的功能一般用于标识状态另外 用bitmap进行当天有多少人签到非常的方便使用bitcountcountredis-BITCOUNT($key);签到流程设置两个bitmap ,一个以每天日期为key 每个uid为偏移量一个以用户uid为key 当天在一年中的索引为偏移量这样记录一个用户一年的签到情况仅需要365*1bit以下是签到代码//每天一个key  $key checkin_ . date(ymd);  if($redis-getbit($key, $uid)){   //已签到   return json_encode([code 0, msg 已签到成功]);  }else{   //签到   $redis-setbit($key, $uid, 1);   $redis-setbit(checkin_.$uid , date(z), 1);  }以下是用户连续签到计算public static function getUserCheckinCount($uid){  $key  checkin_.$uid;  $index date(z);  $n 0;  for($i $index; $i0;$i--){   $bit Yii::$app-redis-getbit($key, $i);   if($bit 0) break;   $n;  }  return $n; }以下是计算一天签到用户数$key checkin_ . date(ymd);$redis Yii::$app-redis;$count $redis-BITCOUNT($key);还有什么需求呢可以自己试着去实现三. 优缺点比较1、直接MySQL思路简单容易实现缺点占用空间大表更新比较多影响性能数据量大时需要用cache辅助2、Redis bitmap优点是占用空间很小纯内存操作速度快缺点是记录的信息有限只有一个标识位偏移量不能大于2^32512M大概可以标识5亿个bit位绝大多数的应用都是够用的啦偏移量很大的时候可能造成 Redis 服务器被阻塞所以要考虑切分。好啦两种方式介绍完了各有利弊你喜欢哪种方式呢看完本文有收获点赞、分享是最大的支持
http://www.pierceye.com/news/887363/

相关文章:

  • 南宁seo平台费用安徽网站关键词优化排名
  • 李贤威 wordpress甘肃搜索引擎网络优化
  • 网站建设的步骤图片过程9377将军
  • 做彩票网站需要什么服务器wordpress slug
  • 个人空间网站建设太原做网页软件
  • 网站建站方式有哪些wordpress星座主题自适应
  • 如何为公司做网站算命 网站开发
  • 那些做软件的网站十大装潢公司上海
  • wordpress 仿站 主题公路建设网站
  • 接网站 建设网站建设业务员招聘
  • 江西工程建设信息网站服装公司网站建设
  • 什么店是做网站制作的dw网站结构图怎么做
  • 一个网站开发需要多久软件开发工时费用标准
  • 做网站 公司不懂英文怎么做英文的seo网站
  • 南宁企业门户网站建设价格连云港网站建设电话
  • 石林彝族网站建设网站活动页面设计
  • 网站建设流程表推广联盟有哪些平台
  • 制作网站深圳建大型门户网站
  • 网站开发招标技术规范书网站建设动态静态
  • 阿里巴巴网站开发工具北京的网站制作公司
  • 石家庄网站营销互联网运营培训课程
  • 单位网站服务的建设及维护oa软件定制开发
  • 银川公司网站建设zepto网站开发
  • 看谁做的好舞蹈视频网站电话营销
  • 开封建网站到哪里学平面设计
  • 电子商务与网站建设实践论文化工行业网站建设
  • 如何搭建一个网站平台卖16斤肉赚200元
  • 手机主页网站推荐江宁城乡建设局网站
  • 甜品网站设计论文张家界seo
  • 单位网站及政务新媒体建设管理wordpress刷留言