Skip to content

Instantly share code, notes, and snippets.

@jteso
Created February 6, 2012 05:54
Show Gist options
  • Save jteso/1750033 to your computer and use it in GitHub Desktop.
Save jteso/1750033 to your computer and use it in GitHub Desktop.
Notes about SI channels

Spring Integration Channels

Point-to-Point Channel (ie. only one consumer will receive the message)

  • QueueChannel - Most basic one, receiver has to call the 'receive' method with timeout optionally
  • PriorityChannel - Allows the endpoint to receive messages in a specified priority.
  • RendezvousChannel - Sender will be bloqued until the receiver retrieves the msg from the channel
  • DirectChannel (default) - Push messages but only one receiver can obtain the message - handleMessage will be perfomed within the sender's thread before send() method returns. Transactional
  • ExecutorChannel - Similar to DirectChannel, but dispatching of the message happends in an instance of TaskExecutor (different to sender's thread), so no transactional support.
  • NullChannel - Used for testing, send() method returns TRUE and receive() method always null.

Publish-Subscribe Channel

  • PublishSubscribeChannel - Message is broadcasted to all the channel subscribers
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment