redis的批量操作命令pipeline(PHP實現)


redis執行一條命令有四個過程:發送命令、命令排隊、命令執行、返回結果;整個過程是一個往返時間(RTT)。如果有n條命令,就會消耗n次RTT。Redis的客戶端和服務端可能部署在不同的機器上。在兩地的數據傳輸受網絡速度的影響,消耗n次的RTT會增加網絡成本,這個和Redis的高並發高吞吐特性背道而馳。
use Redis; class RedisTest { const PORT = 6379; /** * redis對象 */ public $redis = null; public function __construct() { $this->redis = new Redis(); $this->redis->connect('127.0.0.1', self::PORT); } public function testPipeline() { $str_constant = get_class($this->redis) . '::PIPELINE'; if (!$str_constant) { return 'pipeline no exit'; } return $this->redis->pipeline()->publish('test', 'pipe-info')->exec(); } }


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM