Redis 简单使用
你可以在 上调用任何的 Redis
命令。Swoft
使用魔术方法将传递命令给 Redis
服务器,因此只需传递 Redis 命令所需的参数即可:
Redis::set('name', 'Taylor');
$values = Redis::lrange('names', 5, 10);
所有方法和 操作 phpredis
原生一样 本质是通过魔术方法代理访问的,让操作变得更简单
通过 get 方法 调用,底层会自动反序列化,保证了存进去,取出来的数据一致性。
当然 所有的连接都是在连接池中分配的 如果你想使用自己定义的连接可以使用
$poolName = 'redis-clusters-pool'
$redis = Redis::connection($poolName);
$redis->get("a");
如果你想看一个 key
获取的命中情况,可以在你的notice
日志级别中获取,格式大致是 这样的前缀,有助于你分析缓存命中率。
在Redis
执行之前底层会抛出 RedisEvent::BEFORE_COMMAND
事件
after 事件
namespace App\Listener;
use Swoft\Event\Annotation\Mapping\Listener;
use Swoft\Event\EventHandlerInterface;
use Swoft\Event\EventInterface;
use Swoft\Redis\RedisEvent;
* Class FinishListener
*
*
* @Listener(event=RedisEvent::AFTER_COMMAND)
*/
class RedisAfterListener implements EventHandlerInterface
{
/**
* @param EventInterface $event
*/
public function handle(EventInterface $event): void
{
[$method, $parameters, $result] = $event->getParams();
}