RocketMQMessageListenerBeanPostProcessor implements SmartLifecycle start()
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Idoneità per principianti
- 45/100
- Tipo di issue
- Bug
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Tranquilla
- Stack tecnologico
- java, spring, spring-boot
- Ambito
- backend, distributed-systems
Direzione di ricerca
Inizia da RocketMQMessageListenerBeanPostProcessor, in particolare da postProcessAfterInitialization() e start(), e riproduci l’ordine registrato usando solo Spring Boot 2.7.18 e usando le dipendenze Spring Cloud Alibaba elencate. Traccia le callback del ciclo di vita e le chiamate al registrar; il lavoro è concluso quando i container dei listener vengono registrati prima dell’esecuzione di startContainer() in entrambe le configurazioni.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
@Override
public Object postProcessAfterInitialization(Object bean, String beanName) throws BeansException {
Class<?> targetClass = AopUtils.getTargetClass(bean);
RocketMQMessageListener ann = targetClass.getAnnotation(RocketMQMessageListener.class);
if (ann != null) {
RocketMQMessageListener enhance = enhance(targetClass, ann);
if (listenerContainerRegistrar != null) {
log.warn("=== 111 ====");
listenerContainerRegistrar.registerContainer(beanName, bean, enhance);
}
}
return bean;
}
@Override
public int getPhase() {
return Integer.MAX_VALUE - 2000;
}
@Override
public void start() {
if (!isRunning()) {
this.setRunning(true);
log.warn("=== 222 ====");
listenerContainerRegistrar.startContainer();
}
}
1、单独使用spring-boot 2.7.18 registerContainer start 顺序正确可正常使用。
执行顺序
=== 111 ==== 先执行
=== 222 ==== 后执行
registerContainer 注册正常。
start 正常。
2、主要依赖如下
spring-cloud 2021.0.6
spring-cloud-starter-alibaba 2021.0.6.1
spring-boot 2.7.18
执行顺序
=== 222 ==== 先执行
=== 111 ==== 后执行
registerContainer 注册正常。
start 未能正常执行。
- Lingua principale
- Java
- Stelle
- 2.3k
- Fork
- 941
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Ha un modello di pull request
- Nessuna guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di apache/rocketmq-spring
-
[Bug] RocketMQClientTemplate.receiveAsync closes the shared SimpleConsumer, breaking all subsequent operationsForse già presa @wang-jiahua l’ha presa 57 giorni fa. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 88/100
apache/rocketmq-spring#780 · 3 commenti ·
-
编译报错Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
apache/rocketmq-spring#692 · 1 commento ·
-
消费者注册时候对nameserver取值有点问题Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
apache/rocketmq-spring#678 · 2 commenti ·
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 82/100
apache/rocketmq-spring#670 · 1 commento ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 62/100
apache/rocketmq-spring#609 · 3 commenti ·
Tutte le issue di apache/rocketmq-spring
Issue simili
-
breaking change bug needs human review not ready priority medium size S
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
martin-francois/symphony-trello#1193 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
Mend: dependency security vulnerability
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 65/100
I maintainer di solito rispondono entro 1 giorno
-
status: waiting-for-triage
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
spring-projects/spring-framework#37614 ·
I maintainer di solito rispondono entro 1 giorno