我正在为我的一个Heroku java应用程序使用Redis Cloud插件。我想从我的应用程序中收听关键空间事件。我尝试在Jedis客户端上设置配置,但我没有收到任何通知
URI redisUri = new URI(REDIS_CLOUD_URL);
JedisPool pool = new JedisPool(new JedisPoolConfig(),
redisUri.getHost(),
redisUri.getPort(),
Protocol.DEFAULT_TIMEOUT,
redisUri.getUserInfo().split(":",2)[1]);
pool.getResource().getClient().configSet("notify-keyspace-events", "K$");
使用嵌入式redis服务器时,我会执行以下操作并收到通知。
RedisServer redisServer = RedisServer.builder().port(6379)
.setting("notify-keyspace-events K$")
.build();
redisServer.start();
我想在Redis Cloud上设置类似的配置。是否有用于Redis Cloud或Jedis API的CLI来执行相同的操作?
答案 0 :(得分:0)
您可以在运行时更改一些Redis配置。我建议您在应用程序通过Redis客户端启动时立即设置配置变量:(node_redis示例:)
var client = redis.createClient();
client.config("SET", "notify-keyspace-events", "K$");
要查看您可以指定的事件,请查看此处:Redis-Notifications