demo中有封装好的redis连接池以及redis类,复制demo中的RedisPool.php和RedisObject.php并放入App/Utility/Pool中即可使用

    在,produce.php中添加配置信息:

    EasySwooleEvent.php的initialize方法中注册连接池对象(注意命名空间,新版本可以无需注册,自动注册)

    1. <?php
    2. //注册之后会返回conf配置,可继续配置,如果返回null代表注册失败

    连接池不是跨进程的,进程间的连接池连接数是相互独立的,默认最大值是10个;如果开了4个worker,最大连接数可以达到40个。

    通过redis连接池获取redis操作对象

    用完redis连接池对象之后记得用recycleObj回收

    用完redis连接池对象之后记得用recycleObj回收(新版本可使用invoker.defer方法自动回收)

    • invoke
      可通过invoke静态方法直接从连接池取出一个连接,直接使用,回调函数结束后自动回收:
    • defer
      使用defer方法直接获取一个连接池连接,直接使用,协程结束后自动回收:
      1. $name = $redis->get('name');

    新增preload方法,可在程序启动后预创建连接,避免在启动时突然大量请求,造成连接来不及创建从而失败的问题.
    示例:
    在EasySwooleEvent文件,mainServerCreate事件中增加onWorkerStart回调事件中预热启动: