我正在考虑在我的Java应用程序中使用Redis,而不是Quartz。
这个想法是重用Redis密钥过期机制,作为作业触发器。工作流程如下:
- 在Redis中创建一个密钥,其到期时间为计划时间
- 在Java中监听密钥过期
- 密钥过期时触发由密钥名称定义的作业
有人试过这样的用例吗?
Ya我试图解决redis缓存过期的几个问题。我安装了NodeJ。
但您必须维护此逻辑,即使它在下一个流程中过期,并根据您的业务逻辑设置过期时间
redisCache.config('set','notify-keyspace-events','KEA');
redisCache.subscribe(`__keyevent@${process.env.REDIS_DATABASE}__:expired`);
redisCache.on('message', (channel, key) => {
/**
Logic
*/
});