<?php namespace Lib; use Swoole\Database\RedisConfig; /** * redis 链接池 * @author:dc * @time 2023/2/10 17:04 * Class RedisPool */ class RedisPool { use RedisQuery; /** * @var \Swoole\Database\RedisPool */ static $pool = null; /** * RedisPool constructor. */ public function __construct() { if(empty(static::$pool)){ static::$pool = new \Swoole\Database\RedisPool((new RedisConfig) ->withHost(REDIS_HOST) ->withPort(REDIS_PORT) ->withAuth(REDIS_PASSWORD) ->withDbIndex(REDIS_DB) ->withTimeout(60) ,1024 ); } // 获取一个连接,放入当前实例 $this->client = static::$pool->get(); } public function __destruct() { $this->close(); } /** * 关闭 * @author:dc * @time 2023/3/16 13:42 */ public function close(){ self::$pool->put($this->client); $this->client = null; } }