首頁  >  文章  >  後端開發  >  PHP和Redis實現高並發下註冊人數統計

PHP和Redis實現高並發下註冊人數統計

小云云
小云云原創
2018-01-31 09:05:521999瀏覽

現在越來越多的網站開始注重統計和使用者行為分析,作為網站經常使用的功能,如何讓統計效能更加高,這也是我們需要考慮的事情。本篇透過Redis來優化統計功能(以註冊人數統計為例)。本文主要為大家分享一個PHP+Redis 訊息佇列 實現高並發下註冊人數統計的實例,具有很好的參考價值,希望對大家有所幫助。一起跟著小編過來看看吧,希望能幫助大家。

傳統的統計功能都是直接操作資料庫把資料插入表中。這樣做,對資料庫的效能消耗就會比較大。

想法:

這裡我們用到了redis的佇列,註冊的時候先加入到佇列,然後在處理的時候出隊,並且把人數加入redis裡。

程式碼:

<?php
//register.php 
$redis = new Redis();
$redis->connect('127.0.0.1',6379);
$i=0;
while(true){
  $i++;
  //假定一直有人在注册
  $redis->rpush("register_success",$i);
}
<?php
//deal.php
$redis = new Redis();
$redis->connect('127.0.0.1',6379);
while (true) {
  //list类型出队操作
  $value = $redis->lpop('register_success');
  if($value){
    echo "deal value : ".$value;
    //自增 添加注册人数统计  如果key不存在 则会初始化为0
    $redis->incr('register_num');
  }else{
    echo "deal finish";
  }
}

相關推薦:

#利用檔案屬性結合Session實現線上人數統計_PHP教學

#PHP+MYSQL實作網站線上人數統計[程式碼]

php+memcache實現的網站線上人數統計程式碼_PHP

##

以上是PHP和Redis實現高並發下註冊人數統計的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn