Hi Friends - Please ensure to add 'On Error Propagate' in the Main flow as well and add the same Objet Store - 'Store' operation in case the JMS publish fails while or before the data is published into the JMS Queue. This will ensure that the Delivery will be guaranteed in all circumstances, when JMS server crashes. Thank you !!!
JMS Specs of ActiveMQ are not much featured, for option like "explicit acknowledgement" but for time being along with "Persistent" delivery, we can opt for "Manual" acknowledgement at consumer/listener side to retain the messages on Queue even after consumption.
Hello Siva, firstly I would like to thank you for all the content that you have been putting across.(esp. for a beginner like me) In this use case, what is the datatype of the column that you have used in order to handle the payload. Do I have to declare it as a BLOB. Please clear me on this.
Thanks for this useful info! Just had one question- could we use VM persistent queues instead of JMS within an application. Is there any downside to it.
Hi Sir, If we are trying to insert multiple messages in DB inside a for-each loop and DB connection is unavailable then it will add many messages on the DLQ. Is there any way we only put selective messages on DLQ other than Connection failures?
Hi, I did not understand two things: 1) the messages that the jsm listener is unable to insert, go to the IMQ queue of those not consumed, so the jms listener does not mark them as consumed if the subsequent flow is not successful? 2) the messages that go among those not consumed, what happens to them?
Hi Alfonso - Thanks for your clarifications. I added the comment in the video. If JMS fails before even the message is published, the message fails and the exception handler inserts them into Failed Messages Object Store 'employeeStore'. The same thing happens, when the message fails when the Database Connectivity fails. In both cases, they will get accumulated into the 'employeeStore'. They both need to be re-processed by special mechanism by consuming them and inserting them into the Database (this part is left for the viewers requirements). Hope this clarifies.
Hello Siva , thanks for giving so many good videos. I have a query over here - lets assume we have a scenario - there are multiple flows ( of multiple data types )which are writing data into object store. So when we try to reprocess data from object store than how do we failed data of particular flow only ( means how can we differentiate the data in object store. Thanks, Mayank
Hi Mayank - The Object Store can be classified with different names and you can use different store for different purposes. Just like creating variables. For example, 'Failed_Products', 'Failed_Orders', etc. You can have many object stores introduced in your flow.
Hello Siva, Great content! I just have a question, How setup time in the JMS listener so that it reads from queue for every 1 hour instead of processing immediately as soon as something comes in to queue.
Hi Rohit - Please combine the scheduler with JMS Consume to achieve this. I have already published the video for this under JMS, you can please refer that. Good question, Rohit !!
Hi Friends - Please ensure to add 'On Error Propagate' in the Main flow as well and add the same Objet Store - 'Store' operation in case the JMS publish fails while or before the data is published into the JMS Queue. This will ensure that the Delivery will be guaranteed in all circumstances, when JMS server crashes. Thank you !!!
Thank you so much for the explanation!
Thanks Shiva for all your videos
JMS Specs of ActiveMQ are not much featured, for option like "explicit acknowledgement" but for time being along with "Persistent" delivery, we can opt for "Manual" acknowledgement at consumer/listener side to retain the messages on Queue even after consumption.
Very clean and deep explanation ..Tq siva👏👏👏
Thank You a lot for providing quality videos on architecture patterns. Can you please create video on Streaming Strategies in Mule4.
Hello Siva,
firstly I would like to thank you for all the content that you have been putting across.(esp. for a beginner like me)
In this use case, what is the datatype of the column that you have used in order to handle the payload. Do I have to declare it as a BLOB.
Please clear me on this.
Hi Mohan - you can use VARCHAR if the expected payload size is small and predictable. If you are unsure please use CLOB.
Thanks for this useful info! Just had one question- could we use VM persistent queues instead of JMS within an application. Is there any downside to it.
Hi Sir, If we are trying to insert multiple messages in DB inside a for-each loop and DB connection is unavailable then it will add many messages on the DLQ. Is there any way we only put selective messages on DLQ other than Connection failures?
Hi Siva, Can we use Websphere based JMS queueing for this demo
Hi, I did not understand two things: 1) the messages that the jsm listener is unable to insert, go to the IMQ queue of those not consumed, so the jms listener does not mark them as consumed if the subsequent flow is not successful?
2) the messages that go among those not consumed, what happens to them?
Hi Alfonso - Thanks for your clarifications. I added the comment in the video. If JMS fails before even the message is published, the message fails and the exception handler inserts them into Failed Messages Object Store 'employeeStore'. The same thing happens, when the message fails when the Database Connectivity fails. In both cases, they will get accumulated into the 'employeeStore'. They both need to be re-processed by special mechanism by consuming them and inserting them into the Database (this part is left for the viewers requirements). Hope this clarifies.
Much appreciated!!
Hello Siva , thanks for giving so many good videos. I have a query over here - lets assume we have a scenario - there are multiple flows ( of multiple data types )which are writing data into object store. So when we try to reprocess data from object store than how do we failed data of particular flow only ( means how can we differentiate the data in object store.
Thanks,
Mayank
Hi Mayank - The Object Store can be classified with different names and you can use different store for different purposes. Just like creating variables. For example, 'Failed_Products', 'Failed_Orders', etc. You can have many object stores introduced in your flow.
@@sivathankamanee-channel thanks
Hello Siva,
Great content! I just have a question, How setup time in the JMS listener so that it reads from queue for every 1 hour instead of processing immediately as soon as something comes in to queue.
Hi Rohit - Please combine the scheduler with JMS Consume to achieve this. I have already published the video for this under JMS, you can please refer that. Good question, Rohit !!
@@sivathankamanee-channel Thank you so much! So instead of jms listener I will use scheduler and consume.