上面的方式觉得还是不方便,一样平常而言处置惩罚消息和消费消息是异步的,纵然是同步也不会在消费线程直接处置惩罚,一样平常是发送到其他地方接口处置惩罚,所以为啥还要写消费者代码呢,默认一个不就好了,但是注解参数确是常量,那么字节码天生一个唯一的类即可。
假如天生者和消费者处置惩罚逻辑不消网关应用处置惩罚,那么仅仅是无脑转发,雷同zuul,可以通过字节码天生方式实现同一逻辑,主要是消费者,毕竟有注解,生产者不存在注解可以直接new出来注入bean。
以javassist为例,简朴些,当然asm也可以
show me the code
其实就说把扫描的消费者类,酿成固定某个类消费
//@KafkaListener(topics = "${test.topic}")
//@Component
//@KafkaConfigConsumer(beanId = "xxx_consumer")
public class KafkaConsumer {
private static final Logger LOGGER = LoggerFactory.getLogger(KafkaConsumer.class);