Tag Archives

2 Articles

Memcached擴展的一些坑及強迫症專用PV統計的實現

0   43737 轉為簡體

以下針對PHP的Memcached擴展

  • increment/decrement/touch方法必須使用binary protocol($_mc->setOption(Memcached::OPT_BINARY_PROTOCOL,true)),且連續執行兩個請求必須先關閉之前的才可以
  • $expiry參數可以是UNIX 時間戳也可以是當前秒數,秒數大於30天會被認為是時間戳,要設置用不超時可以設為0
  • 啟用binary protocol後increment/decrement的返回值可能類似1 15415 a2d1,←注意是類似這樣的,沒關係加個intval就行了
  • 看php.org文檔的時候下面的用戶留言比上面的有用得多

強迫症專用PV統計

強迫症認為PV統計漏掉一個IP就會渾身難受

在需要統計的頁面的PHP中嵌入一下代碼

每個ip一小時內訪問相同頁面只計一次;注意要先touch再increment,因為increment並不會增加超時時間,如果增加了還沒被讀就超時就杯具了;反之如果key不存在touch一下也不會懷孕;每當一個新用戶訪問,增加生命值10min

cron定時入庫

 

注意這裡不能用delete,因為delete可能會使數據丟失,但是decrement就沒關係了