博客現在用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就沒關係了