As long as you’re not doin asynchronous dispatch into MessageChannels, the publish should be within a transaction’s boundaries. See the docs or www.baeldung.com/spring-integration-transaction
Lets say i have 2 apps , i send a message from app1 on a channel where this channel is initialised, app2 wants to receive this mesaage from the channel in app1. The channel is of default type. Is it possible to send message from app1 to app2. How is it possible as both app1 and app2 are 2 jvms?
Absolutely! Stick an outbound adapter on the end of one channel (on the producing app) and an inbound adapter on the beginning of the consuming app. The outbound and inbound adapters could, for example, support communication with FTP, email, AMQP, JMS, Kafka, etc etc
Thank you Josh this is great tutorial. Is it possible that you show how to combine RabbitMQ with MQTT and make some sort of load balancer for multiple clients (producer and consumer)
Hi - I don’t know that I would say it’s _not_ easy to use.. :-) check out some of the videos on this channel for inspiration/validation lol. josh did a Spring Tips video on bit.ly/spring-tips-playlist on Apache Camel. No comparison, tho. Josh’s TL;DR: Apache Camel has more connectors but Spring Integration more closely matches the patterns in the “Enterprise Integration Patterns” book, so it’s easier for people doing EAI. Upshot? They both work well together!
Thanks for the video! Would you say that it is good practice to use spring boot modulith with events together with spring boot integration with messages? Would the integration part become a package module? And when would typically the messages be transformed into events?
Hey Josh. I'm looking to poll from a mongodb source that queries for records in a "ready" state. I also need to change those records from "ready" to "processing" so that another poller doesn't pick up the same records while they are already being processed. After each record is processed, I need to update the state to "done". The processing involves delivering a message to a websocket (probably abstracted behind a message channel?). Can IntegrationFlow help with this? It seems like I would need a .handle() to first flip from ready to processing, and then a .channel() to deliver it to another channel to be delivered, followed by another .handle() to mark it complete. Does that make sense? Also, I would need create these IntegrationFlows dynamically at runtime for each websocket session, since the query would old care about documents associated with a particular session id specified by the websocket during handshake. That also means I would need to dynamically create message channels at runtime as well. Is this something that can be done with spring integration?
hi, great video. But there is a problem, I watched the video, I go to your repository and I see that the code that you wrote on the video no longer exists ??? yes i see the base folder and many new modules in this thread but where is the code you showed in the video? take this into account in the future. It's a pleasure to listen and watch you, interesting topics
how can we manage transaction inside spring integration
As long as you’re not doin asynchronous dispatch into MessageChannels, the publish should be within a transaction’s boundaries. See the docs or www.baeldung.com/spring-integration-transaction
Lets say i have 2 apps , i send a message from app1 on a channel where this channel is initialised, app2 wants to receive this mesaage from the channel in app1. The channel is of default type. Is it possible to send message from app1 to app2. How is it possible as both app1 and app2 are 2 jvms?
Absolutely! Stick an outbound adapter on the end of one channel (on the producing app) and an inbound adapter on the beginning of the consuming app. The outbound and inbound adapters could, for example, support communication with FTP, email, AMQP, JMS, Kafka, etc etc
Do you look at the Kafka support in any of these Spring Integration sessions?
Not yet, but it’s 100% on the list to look at, both when using Spring Integration, and as a standalone treatment
Thank you Josh this is great tutorial. Is it possible that you show how to combine RabbitMQ with MQTT and make some sort of load balancer for multiple clients (producer and consumer)
Will you help?
Is spring integration any easier to use now than 5 years ago? Do you have any session on apache camel and comparison?
Hi - I don’t know that I would say it’s _not_ easy to use.. :-) check out some of the videos on this channel for inspiration/validation lol. josh did a Spring Tips video on bit.ly/spring-tips-playlist on Apache Camel. No comparison, tho. Josh’s TL;DR: Apache Camel has more connectors but Spring Integration more closely matches the patterns in the “Enterprise Integration Patterns” book, so it’s easier for people doing EAI. Upshot? They both work well together!
Thanks for the video! Would you say that it is good practice to use spring boot modulith with events together with spring boot integration with messages? Would the integration part become a package module? And when would typically the messages be transformed into events?
Thanks for hanging with us. Could you give us a little more details about what you are saying? Feel free to use implementation details.
great video ! i like it
That’s great to hear ! Thanks for the kind words and for joining me on this adventure
Hey Josh. I'm looking to poll from a mongodb source that queries for records in a "ready" state. I also need to change those records from "ready" to "processing" so that another poller doesn't pick up the same records while they are already being processed. After each record is processed, I need to update the state to "done". The processing involves delivering a message to a websocket (probably abstracted behind a message channel?).
Can IntegrationFlow help with this? It seems like I would need a .handle() to first flip from ready to processing, and then a .channel() to deliver it to another channel to be delivered, followed by another .handle() to mark it complete. Does that make sense?
Also, I would need create these IntegrationFlows dynamically at runtime for each websocket session, since the query would old care about documents associated with a particular session id specified by the websocket during handshake. That also means I would need to dynamically create message channels at runtime as well.
Is this something that can be done with spring integration?
What have you tried so far? Do you have a public repo?
hi, great video. But there is a problem, I watched the video, I go to your repository and I see that the code that you wrote on the video no longer exists ??? yes i see the base folder and many new modules in this thread but where is the code you showed in the video? take this into account in the future. It's a pleasure to listen and watch you, interesting topics
Thanks for the kindness. I’m not sure why the code isn’t there. Maybe it’s in earlier revisions?
@@coffeesoftware do you have the video code? can you push it?
All I have is in github.com/coffee-software-show/lets-code-spring-integration
Can the author provide the source code or upload to github?
github.com/coffee-software-show/lets-code-spring-integration
😺
I hope that means you enjoyed it :)