php 實現訊息佇列

2021-07-08 21:47:45 字數 1268 閱讀 8019

在做傳送郵件系統時,因為傳送大量郵件很費時間,提出方案是採用佇列的方式

php中可以用memcache/memecached來實現訊息佇列。

<?

php  

/**

* memcache 訊息佇列類

*/class

qmc

return

$mc;

}/**

* mc 計數器,增加計數並返回新的計數

* @param string $key   計數器

* @param int $offset   計數增量,可為負數.0為不改變計數

* @param int $time     時間

* @return int/false    失敗是返回false,成功時返回更新計數器後的計數

*/static

public

function

set_counter

($key

,$offset

,$time=0

)$offset

=intval

($offset

);if

($offset

>0)

elseif

($offset

<0)

return

$val;}

/**

* 寫入佇列

* @param string $key

* @param mixed $value

* @return bool

*/static

public

function

input

($key

,$value

)/**

* 讀取佇列裡的資料

* @param string $key

* @param int $max  最多讀取條數

* @return array

*/static

public

function

output

($key

,$max

=100

)return

$out;}

}/**

使用方法:

qmc::input($key, $value );//寫入佇列

$list = qmc::output($key);//讀取佇列

*/?>

PHP訊息佇列實現及應用

目前對訊息佇列並不了解其原理,本篇文章主要是通過慕課網學習歸納的一些筆記,為後續學習打下基礎。眾所周知在對 設計的時候,會遇到給使用者 簡訊 訂單系統有大量的日誌 秒殺設計 等,伺服器沒法處理這種瞬間迸發的壓力,這種情況要保證系統正常有效的使用,就需要 訊息佇列 的幫助。本篇主要通過訊息佇列的思路進...

PHP訊息佇列實現及應用

目前對訊息佇列並不了解其原理,本篇文章主要是通過慕課網學習歸納的一些筆記,為後續學習打下基礎。眾所周知在對 設計的時候,會遇到給使用者 簡訊 訂單系統有大量的日誌 秒殺設計 等,伺服器沒法處理這種瞬間迸發的壓力,這種情況要保證系統正常有效的使用,就需要 訊息佇列 的幫助。本篇主要通過訊息佇列的思路進...

PHP和MySQL實現訊息佇列

最近遇到乙個批量傳送簡訊的需求,簡訊介面是第三方提供的。剛開始想到,獲取到手機號之後,迴圈呼叫介面傳送不就可以了嗎?但很快發現問題 當簡訊數量很大時,不僅耗時,而且成功率很低。於是想到,用php和mysql實現乙個訊息佇列,一條一條的傳送簡訊。下面介紹具體的實現方法 首先,建立乙個資料表sms,包含...