Mass Transit

Loading...

Flash Player 9 (or above) is needed to view presentations.
We have detected that you do not have it on your computer. To install it, go here.

0 comments

Post a comment

    Post a comment
    Embed Video
    Edit your comment Cancel

    Notes on slide 1

    Messaging – MSMQ, ActiveMQ, Azure/EC2

    Async – message producers are non-blocking; fire-and-forget messaging; message consumers run in their own process; more complex;Decoupled – eliminates temporal coupling; enables isolated testing of services; reduces dependencies, allowing service reuse (e.g. credit card authorisation);Explicit contracts – agreement between producer/consumer; abstraction of implementationFault tolerance – durable message transports;Availability – small frequent transfers of related content (batching); load can be distributed over a wider time window;

    Maximises throughput; orders are placed in a queue, correlated by name, barista can optimise processing; out-of-order deliveryError handling – write-off : discard the drink and start a fresh one; compensating action : refund money2-phase commit – wait at cashier with receipt and money on table until drink is prepared. Everything changes hands in one go, Neither cashier nor customer could leave until complete. Much simpler, but kills throughput and destroys business model, no scaleability. ESB – scales out by adding more cashiers/baristas

    NServiceBus –UdiDahan; most mature Alt.Net product; 100m durable/transactional and 900m non-durable messages per hour on 3 blade centers (48 blades), 30 1U servers and 20 clusters.SimpleServiceBus – a fork of NServiceBus; designed to be more modular; health & performance monitoring baked in;ESB.NET – Keystroke IT Australia; core components are binary only, remainder is open-source

    Favorites, Groups & Events

    Mass Transit - Presentation Transcript

    1. MassTransit
      David KeavenySenior DeveloperFairfax Digital
    2. Enterprise Service Bus
      An infrastructure used for enterprise integration via a service-oriented approach:
      Reliable messaging;
      Messages exchanged between services using standard messaging patterns (e.g. request/response, publish/subscribe);
      Messages consist of XML data and metadata;
      Provides services for transforming and routing of messages
    3. What is it?
    4. What is it?
      Asynchronous
      Minimised coupling
      Explicit contract
      Fault tolerant
      Data availability
    5. What is it?
      Hotto cocoa okudasai
      a.k.a. Starbucks Does Not Use Two-Phase Commit
      http://www.eaipatterns.com/ramblings/18_starbucks.html
    6. ESB Implementations
      Microsoft BizTalk
      IBM WebSphere
      TIBCO BusinessWorks
    7. Alt.Net ESB Implementions
      NServiceBus
      SimpleServiceBus
      (ESB.NET)
      MassTransit
    8. MassTransit Summary
      Originated by Chris Patterson & Dru Sellers
      Lightweight Service Bus Implementation
      Loose coupling via publish/subscribe
      Active Service pattern
      Supports MSMQ, ActiveMQ, TIBCO EMS
      Open Source, Apache 2.0 License
    9. MassTransit Architecture
    10. Testing
      Individual components testable in isolation
      Fully unit-testable using mocks and stubs
      Test-first development helps improve data contract
    11. Visualisation Tools
      Presents code-base logic in a visual form
      Aid in identifying composition problems
      Should be viewable on operational systems
    12. Real-world Usage
    13. Lessons Learned
      Network services are unreliable FAIL
      Ability to isolate services for testing WIN
      State-machine-based workflows WIN
      Under active developer FAIL/WIN
    14. Further Reading
    SlideShare Zeitgeist 2009

    + David KeavenyDavid Keaveny Nominate

    custom

    81 views, 0 favs, 0 embeds more stats

    Presentation made at the Sydney Alt.NET user group more

    More info about this document

    © All Rights Reserved

    Go to text version

    • Total Views 81
      • 81 on SlideShare
      • 0 from embeds
    • Comments 0
    • Favorites 0
    • Downloads 1
    Most viewed embeds

    more

    All embeds

    less

    Flagged as inappropriate Flag as inappropriate
    Flag as inappropriate

    Select your reason for flagging this presentation as inappropriate. If needed, use the feedback form to let us know more details.

    Cancel
    File a copyright complaint
    Having problems? Go to our helpdesk?

    Categories