如何在redisson reactive api (spring boot project)中配置key过期事件监听器

how to configure the key expired event listener in redisson reactive api (spring boot project)

我正在使用 spring boot web flux with redisson。我想在我的应用程序中启用所有密钥过期事件。我这样试过。但它不起作用。

this.client.getTopic("__keyevent@*__:expired", StringCodec.INSTANCE)
        .addListener(String.class, new MessageListener<String>() {
            @Override
            public void onMessage(CharSequence channel, String msg) {
                //
            }
        });

我希望帮助解决这个问题。

第一个问题是,您还没有订阅听众。第二个是,如果您在 redisson 中使用模式,则不能对 pub-sub 事件使用 getTopic。你应该像这样使用 getPatternTopic 方法。并确保最终订阅该流程。监听器应该从 PatternMessageListener 接口实现。


        this.client
                .getPatternTopic("__keyevent@*__:expired", StringCodec.INSTANCE)
                .addListener(String.class, new PatternMessageListener<String>() {
                    @Override
                    public void onMessage(CharSequence pattern, CharSequence channel, String msg) {
                        System.out.println("pattern = " + pattern + ", channel = " + channel + ", msg = " + msg);
                    }
                })
                .subscribe();