मैं 1000ms और 500ms रिपीटइंटरवल के साथ एक समय में एक से अधिक शेड्यूलर चला रहा हूं। शेड्यूलर कतार से कुछ संदेशों को पढ़ता है, उन्हें संसाधित करता है, और एक MySQL डेटाबेस में संग्रहीत करता है। इन प्रक्रियाओं के बीच कभी-कभी मुझे इस तरह के अपवाद मिल रहे हैं।

javax.jms.JMSException: AMQ119014: Timed out after waiting 30,000 ms for response when sending packet 71
2020-02-25 12:05:27,483 ERROR [stderr] (DefaultQuartzScheduler_Worker-5)        at org.apache.activemq.artemis.core.protocol.core.impl.ChannelImpl.sendBlocking(ChannelImpl.java:398)
2020-02-25 12:05:27,483 ERROR [stderr] (DefaultQuartzScheduler_Worker-5)        at org.apache.activemq.artemis.core.protocol.core.impl.ChannelImpl.sendBlocking(ChannelImpl.java:304)
2020-02-25 12:05:27,484 ERROR [stderr] (DefaultQuartzScheduler_Worker-5)        at org.apache.activemq.artemis.core.protocol.core.impl.ActiveMQSessionContext.sendFullMessage(ActiveMQSessionContext.java:378)
2020-02-25 12:05:27,484 ERROR [stderr] (DefaultQuartzScheduler_Worker-5)        at org.apache.activemq.artemis.core.client.impl.ClientProducerImpl.sendRegularMessage(ClientProducerImpl.java:286)
2020-02-25 12:05:27,485 ERROR [stderr] (DefaultQuartzScheduler_Worker-5)        at org.apache.activemq.artemis.core.client.impl.ClientProducerImpl.doSend(ClientProducerImpl.java:264)
2020-02-25 12:05:27,485 ERROR [stderr] (DefaultQuartzScheduler_Worker-5)        at org.apache.activemq.artemis.core.client.impl.ClientProducerImpl.send(ClientProducerImpl.java:122)
2020-02-25 12:05:27,485 ERROR [stderr] (DefaultQuartzScheduler_Worker-5)        at org.apache.activemq.artemis.jms.client.ActiveMQMessageProducer.doSendx(ActiveMQMessageProducer.java:477)
2020-02-25 12:05:27,486 ERROR [stderr] (DefaultQuartzScheduler_Worker-5)        at org.apache.activemq.artemis.jms.client.ActiveMQMessageProducer.send(ActiveMQMessageProducer.java:173)
2020-02-25 12:05:27,486 ERROR [stderr] (DefaultQuartzScheduler_Worker-5)        at com.ecomm.web.jmsqueue.SubmitToJMS.sendJMSMessagewithpriority(SubmitToJMS.java:197)
2020-02-25 12:05:27,486 ERROR [stderr] (DefaultQuartzScheduler_Worker-5)        at com.ecomm.web.jmsqueue.InputMsgNewServerQueue.sendtosenderQueue(InputMsgNewServerQueue.java:78)
2020-02-25 12:05:27,486 ERROR [stderr] (DefaultQuartzScheduler_Worker-5)        at com.pl4sms.web.thread.InputMsgSchHighPriority.execute(InputMsgSchHighPriority.java:36)
2020-02-25 12:05:27,487 ERROR [stderr] (DefaultQuartzScheduler_Worker-5)        at org.quartz.core.JobRunShell.run(JobRunShell.java:202)
2020-02-25 12:05:27,487 ERROR [stderr] (DefaultQuartzScheduler_Worker-5)        at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:525)
2020-02-25 12:05:27,487 ERROR [stderr] (DefaultQuartzScheduler_Worker-5) Caused by: ActiveMQConnectionTimedOutException[errorType=CONNECTION_TIMEDOUT message=AMQ119014: Timed out after waiting 30,000 ms for response when sending packet 71]
2020-02-25 12:05:27,488 ERROR [stderr] (DefaultQuartzScheduler_Worker-5)        ... 13 more
2020-02-25 12:05:27,488 ERROR [com.ecomm.web.jmsqueue.SubmitToJMS] (DefaultQuartzScheduler_Worker-5) javax.jms.JMSException: AMQ119014: Timed out after waiting 30,000 ms for response when sending packet 71
-1
Harry.ver36 26 फरवरी 2020, 13:22
कृपया बहुत सारे संदर्भ जोड़ें कि आप क्या करने का प्रयास कर रहे थे, आपने यह त्रुटि कहाँ देखी, आदि। साथ ही, आपका प्रश्न क्या है?
 – 
Unmanned Player
26 फरवरी 2020, 14:38
आप कहते हैं कि आप वाइल्डफ्लाई 10 में एम्बेडेड हॉर्नेटक्यू ब्रोकर को एक संदेश भेज रहे हैं, लेकिन वाइल्डफ्लाई 10 डिफ़ॉल्ट रूप से हॉर्नेटक्यू को एम्बेड नहीं करता है। यह इसके बजाय ActiveMQ आर्टेमिस को एम्बेड करता है (जो HornetQ कोड-बेस पर आधारित है)। इसके अलावा, स्टैक-ट्रेस इंगित करता है कि आप ActiveMQ Artemis JMS क्लाइंट का उपयोग कर रहे हैं। क्या आप कृपया स्पष्ट कर सकते हैं कि HornetQ आपके उपयोग के मामले में क्या भूमिका निभा रहा है?
 – 
Justin Bertram
26 फरवरी 2020, 19:43

2 जवाब

क्या आप कम से कम अपनी समस्या का वर्णन कर सकते हैं। CONNECTION_TIMEDOUT जूट का मतलब है कि आप कनेक्ट नहीं कर सकते जो कुछ कॉन्फ़िगरेशन समस्या है।

0
ehsavoie 26 फरवरी 2020, 13:50
उत्तर के लिए धन्यवाद। मैं 1000ms और 500ms रिपीटइंटरवल के साथ एक समय में एक से अधिक शेड्यूलर चला रहा हूं। शेड्यूलर कतार से कुछ संदेश पढ़ता है। उन्हें संसाधित करें और MySQL डेटाबेस में स्टोर करें। इन प्रक्रियाओं के बीच कभी-कभी मुझे इस तरह के अपवाद मिल रहे हैं।
 – 
Harry.ver36
26 फरवरी 2020, 13:53

आपकी कक्षा com.ecomm.web.jmsqueue.SubmitToJMS एक संदेश भेजने का प्रयास कर रही है, लेकिन ब्रोकर से प्रतिक्रिया की प्रतीक्षा में यह ऑपरेशन समय समाप्त हो रहा है। आपको या तो क्लाइंट पर टाइम आउट बढ़ाना चाहिए (उदाहरण के लिए क्लाइंट URL पर callTimeout पैरामीटर का उपयोग करके, डिफ़ॉल्ट रूप से 30000 मिलीसेकंड) या जांच करें कि संदेश प्राप्त करने वाला ब्रोकर क्लाइंट को प्रतिक्रिया क्यों नहीं दे रहा है आवंटित समय के भीतर।

0
Justin Bertram 26 फरवरी 2020, 19:50