敏感词的本地缓存,使用 Job 轮询,替代 MQ 广播
parent
5e7e3d816c
commit
27e70e73a3
@ -1,29 +0,0 @@
|
|||||||
package cn.iocoder.yudao.module.system.mq.consumer.sensitiveword;
|
|
||||||
|
|
||||||
import cn.iocoder.yudao.framework.mq.core.pubsub.AbstractChannelMessageListener;
|
|
||||||
import cn.iocoder.yudao.module.system.mq.message.sensitiveword.SensitiveWordRefreshMessage;
|
|
||||||
import cn.iocoder.yudao.module.system.service.sensitiveword.SensitiveWordService;
|
|
||||||
import lombok.extern.slf4j.Slf4j;
|
|
||||||
import org.springframework.stereotype.Component;
|
|
||||||
|
|
||||||
import javax.annotation.Resource;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 针对 {@link SensitiveWordRefreshMessage} 的消费者
|
|
||||||
*
|
|
||||||
* @author 芋道源码
|
|
||||||
*/
|
|
||||||
@Component
|
|
||||||
@Slf4j
|
|
||||||
public class SensitiveWordRefreshConsumer extends AbstractChannelMessageListener<SensitiveWordRefreshMessage> {
|
|
||||||
|
|
||||||
@Resource
|
|
||||||
private SensitiveWordService sensitiveWordService;
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void onMessage(SensitiveWordRefreshMessage message) {
|
|
||||||
log.info("[onMessage][收到 SensitiveWord 刷新消息]");
|
|
||||||
sensitiveWordService.initLocalCache();
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
@ -1,19 +0,0 @@
|
|||||||
package cn.iocoder.yudao.module.system.mq.message.sensitiveword;
|
|
||||||
|
|
||||||
import cn.iocoder.yudao.framework.mq.core.pubsub.AbstractChannelMessage;
|
|
||||||
import lombok.Data;
|
|
||||||
import lombok.EqualsAndHashCode;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 敏感词的刷新 Message
|
|
||||||
*/
|
|
||||||
@Data
|
|
||||||
@EqualsAndHashCode(callSuper = true)
|
|
||||||
public class SensitiveWordRefreshMessage extends AbstractChannelMessage {
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public String getChannel() {
|
|
||||||
return "system.sensitive-word.refresh";
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
@ -1,4 +0,0 @@
|
|||||||
/**
|
|
||||||
* 占位
|
|
||||||
*/
|
|
||||||
package cn.iocoder.yudao.module.system.mq.producer;
|
|
||||||
@ -1,26 +0,0 @@
|
|||||||
package cn.iocoder.yudao.module.system.mq.producer.sensitiveword;
|
|
||||||
|
|
||||||
import cn.iocoder.yudao.framework.mq.core.RedisMQTemplate;
|
|
||||||
import cn.iocoder.yudao.module.system.mq.message.sensitiveword.SensitiveWordRefreshMessage;
|
|
||||||
import org.springframework.stereotype.Component;
|
|
||||||
|
|
||||||
import javax.annotation.Resource;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 敏感词相关的 Producer
|
|
||||||
*/
|
|
||||||
@Component
|
|
||||||
public class SensitiveWordProducer {
|
|
||||||
|
|
||||||
@Resource
|
|
||||||
private RedisMQTemplate redisMQTemplate;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 发送 {@link SensitiveWordRefreshMessage} 消息
|
|
||||||
*/
|
|
||||||
public void sendSensitiveWordRefreshMessage() {
|
|
||||||
SensitiveWordRefreshMessage message = new SensitiveWordRefreshMessage();
|
|
||||||
redisMQTemplate.send(message);
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
Loading…
Reference in New Issue