問題
predis居然不用擴展就可以直接連接redis,他底層是用什麼實現的?phpredis性能比predis要高
但是Laravel官方卻推薦的是predis,請問一下他們之間的區別是什麼?
解答
- predis,是PHP版本寫的redis client,採用socket連接
php extension redis是PHP原生擴展,C寫的 - predis地址
https://github.com/nrk/predis/blob/v1.1/src/Connection/StreamConnection.php
3 可以看出laravel的官方是推薦使用predis的,因爲純php實現的原因,只需要composer即可安裝,非常符合laravel便捷的思想。
4 phpredis在擴展中使用c可以保持php-fpm到redis的長連接,所以一個php-fpm進程上的多個請求是複用同一個連接的。phpredis的pconnect就是長連接方式。
5.predis是使用php的socket來連接redis,所以需要每次請求連接redis。