Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Messaging Systems - Confoo 2014

hannelita
February 27, 2014

Messaging Systems - Confoo 2014

Confoo 2014

hannelita

February 27, 2014
Tweet

More Decks by hannelita

Other Decks in Technology

Transcript

  1. ! • @hannelita • Software Developer • Coffee and Pokémon

    Addicted Hanneli Hi! http://slidesha.re/1dwZ1eS
  2. What we will see • How can we integrate 2

    or more systems? • A list of alternatives to integrate them • Problems and good points of these strategies • Messaging systems - the good parts • Messaging systems - the bad points • Cool pictures, stupid jokes and funny gifs (or not that funny) http://slidesha.re/1dwZ1eS
  3. Method 1 - TXT • How should I format the

    TXT file? • Parse == Hell • Speed (development and execution)
  4. Java World M essage Oriented M iddleware J ava Message

    S ervice Specification(PDF) ActiveMQ HornetQ Oracle AQ Some implementations
  5. Implementations HornetQ ActiveMQ - Work with different languages (interoperability) -

    Security (Cryptography) - Message delivery guarantee (Reliability) PROTOCOL A vanced M essage Q ueuing P rotocol
  6. Implementations HornetQ ActiveMQ - Work with different languages (interoperability) -

    Similar to HTTP - Text PROTOCOL Streaming Text Oriented M essage P rotocol
  7. Implementations ØMQ {- Multiple Languages - Concurrency - Transports messages

    between protocols - Multicast - Written in C++ - Performance - Hard to configure
  8. Implementations Kafka {- Performance - Scalability - Messages persisted on

    disk and replicated on cluster - Environment had to configure
  9. When I should use messaging systems Asynchronous communication - Email

    {- Reports - Long running operations in batch
  10. When I should NOT use messaging systems Synchronous communication -

    Requires immediate response {- Cannot provide information about the destination
  11. MOAR Examples Imagine a system: Sends Emails CRUD Generates Daily

    Reports Captures and log events JMS JMS JMS
  12. References • http://academictech.doit.wisc.edu/blend/facilitate/communicate • http://docs.oracle.com/cd/E19340-01/820-6424/aeraq/index.html • http://docs.oracle.com/javaee/1.3/jms/tutorial/1_3_1-fcs/doc/ jms_tutorialTOC.html • http://www.practicingsafetechs.com/TechsV1/MOMs/

    • http://www.amqp.org/product/overview • http://stomp.github.io/stomp-specification-1.2.html#Protocol_Overview • http://zguide.zeromq.org/ • https://github.com/mperham/sidekiq/wiki • http://kafka.apache.org/