phpredis 和 predis

allencao發表於2017-12-27

phpredis 是使用c寫的php擴充套件,predis 是使用純php寫的。
在效能上的區別當然是擴充套件更好一些,但其實這兩個實現還有更大的區別,就是連線的保持。

  • phpredis在擴充套件中使用c可以保持php-fpm到redis的長連線,所以一個php-fpm程式上的多個請求是複用同一個連線的。phpredis的pconnect就是長連線方式。
  • predis是使用php的socket來連線redis,所以需要每次請求連線redis。

可以看出laravel的官方是推薦使用predis的,因為純php實現的原因,只需要composer即可安裝,非常符合laravel便捷的思想。

phpredis 和 predis 的效能差距沒有跨數量級,當然要考慮具體業務,如果業務非常依賴redis,並且單機qps需要支援的比較大,建議使用phpredis。如果你只是使用laravel使用redis實現規模小的業務,建議不用改變predis。

本作品採用《CC 協議》,轉載必須註明作者和本文連結

相關文章