jelix/php-redis-plugin

Jelix 的 Redis 插件,使用纯 PHP Redis API

安装次数: 2,740

依赖者: 0

建议者: 0

安全性: 0

星标: 0

关注者: 3

分支: 0

开放问题: 0

类型:jelix-module

1.7.8 2023-01-22 18:11 UTC

This package is auto-updated.

Last update: 2024-09-22 21:28:51 UTC


README

Jelix 的插件,通过 jKVDb(Jelix 的 NoSQL API)和 jCache 访问 Redis。

这些插件使用库 php-redis,一个用于连接 Redis 的纯 PHP 库。

如果你不能使用 Jelix 1.7+ 提供的 Redis 插件(使用 Redis 扩展 的 API),你可能需要使用这些插件。

这些插件适用于 Jelix 1.7.x 及更高版本。查看 jelix/jelix 存储库以了解 Jelix 1.7 之前的历史。

安装

像其他 Jelix 插件一样手动安装,或者如果你使用 Composer 安装了 Jelix 1.7+,则可以使用 Composer。

在你的项目中

composer require "jelix/php-redis-plugin"

你可以使用这些插件。它们的名称是 "redis_php"。

配置

对于配置,在 profiles.ini.php 文件中指定 hostport 参数。db 参数是可选的(默认为 0),应指示 Redis 中要使用的数据库编号。

配置示例

; for jkvdb
[jkvdb:myredis]
driver=redis_php
host = localhost
port = 6379
db=3

; for jcache
[jcache:myredis]
driver=redis_php
host = localhost
port = 6379

此驱动程序支持 jIKVttl 接口。

其他参数配置

  • key_prefix:在其中指定一个名称,所有键都将由该名称前缀
  • key_prefix_flush_method:当设置 key_prefix 时,指示如何执行刷新,因为删除可能非常耗费资源。可能的值是
    • direct:直接逐个删除键。警告:这可能会非常耗时。仅在你知道你只使用少量键时使用。
    • jcacheredisworker 用于 jCache 配置文件,或 jkvdbredisworker 用于 jKvDb 驱动程序:它将前缀推送到 Redis 中的 'list' 值。然后应该由其他进程/工作员删除键。Jelix 提供了这样的工作员(请参阅 lib/jelix/core-modules/jelix/controllers/redisworker.cmdline.php)
    • event:通知一个 jelix 事件(对于 jCache 是 jCacheRedisFlushKeyPrefix,对于 jKvDb 是 jKvDbRedisFlushKeyPrefix)。由你自己创建一个侦听器来以你想要的方式删除键。事件参数:prefix 指示要删除的键的前缀,profile 指示用于连接的 jCache/jKvdb。

单元测试

单元测试在 Testapp 中,在 jelix/jelix 存储库中。