3 回答
TA貢獻2012條經驗 獲得超12個贊
1、 Redis和Memcache都是將數據存放在內存中,都是內存數據庫。不過memcache還可用于緩存其他東西,例如圖片、視頻等等。
2、Redis不僅僅支持簡單的k/v類型的數據,同時還提供list,set,hash等數據結構的存儲。
3、虛擬內存--Redis當物理內存用完時,可以將一些很久沒用到的value 交換到磁盤
4、過期策略--memcache在set時就指定,例如set key1 0 0 8,即永不過期。Redis可以通過例如expire 設定,例如expire name 10
5、分布式--設定memcache集群,利用magent做一主多從;redis可以做一主多從。都可以一主一從
6、存儲數據安全--memcache掛掉后,數據沒了;redis可以定期保存到磁盤(持久化)
7、災難恢復--memcache掛掉后,數據不可恢復; redis數據丟失后可以通過aof恢復
8、Redis支持數據的備份,即master-slave模式的數據備份。
TA貢獻1875條經驗 獲得超5個贊
public function index()
{
$serv = new \swoole_server("0.0.0.0", 9501);
$serv->set([
'worker_num' => 1,//一般設置為服務器CPU數的1-4倍
'task_worker_num' => 8,//task進程的數量
'daemonize' => 1,//以守護進程執行
'max_request' => 10000,//最大請求數量
"task_ipc_mode " => 2 //使用消息隊列通信,并設置為爭搶模式
]);
$serv->on('Receive', [$this, 'onReceive']);//接收任務,并投遞
$serv->on('Task', [$this, 'onTask']);//可以在這個方法里面處理任務
$serv->on('Finish', [$this, 'onFinish']);//任務完成時候調用
$serv->start();
}
- 3 回答
- 0 關注
- 524 瀏覽
添加回答
舉報
