博客现在用PHP7了,我再也不用装HHVM了,开心。
你们有没有觉得加载速度变快了或者变慢了呢
博客现在用PHP7了,我再也不用装HHVM了,开心。
你们有没有觉得加载速度变快了或者变慢了呢
以下针对PHP的Memcached扩展
强迫症认为PV统计漏掉一个IP就会浑身难受
在需要统计的页面的PHP中嵌入一下代码
1 2 3 4 5 6 7 8 9 |
<?php $visiter_key = "visitor_".$newsid."_".get_ip(); $pv_key = "pv_".$newsid; $new_pv_cnt = 0; if(!mc_get($visiter_key)){ mc_set($visiter_key, $expire=3600); mc_touch($pv_key, $expire=600);//renew pv stat for 10min, no matter fail or not $new_pv_cnt = mc_incr($pv_key, $offset=1, $init=1, $expire=600); } |
每个ip一小时内访问相同页面只计一次;注意要先touch再increment,因为increment并不会增加超时时间,如果增加了还没被读就超时就杯具了;反之如果key不存在touch一下也不会怀孕;每当一个新用户访问,增加生命值10min
cron定时入库
1 2 3 4 5 6 7 8 9 10 11 12 |
<?php foreach(mc_getallkeys() as $_ => $key){ if(substr($key, 0, 10) == 'detail_pv_'){//访问量 $cnt = intval(mc_get($key)); if($cnt >0){ mc_decr($key, $offset=$cnt, $init=0, $expire=600);//10 min //mc_delete($key); $newsid = explode('_', $key)[2]; ##run sql here } } } |
注意这里不能用delete,因为delete可能会使数据丢失,但是decrement就没关系了