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

Monolith: The Breaking

Monolith: The Breaking

my talk at PixelsCamp

Daniel Serrano

September 28, 2017
Tweet

More Decks by Daniel Serrano

Other Decks in Programming

Transcript

  1. Monolith:
    The Breaking

    View full-size slide

  2. • Onfido's Monolith
    • Microservices
    • Required Standard et al.
    • Architectural/Design Decisions
    • Future

    View full-size slide

  3. Redis-backed Queue
    Billing Check Invoice
    Monolith
    Done

    View full-size slide

  4. Redis-backed Queue
    Billing Check Invoice
    Monolith

    View full-size slide

  5. Redis-backed Queue
    Billing Check Invoice
    Monolith

    • Hotfix
    • Re-deploy Monolith

    View full-size slide

  6. • Tied to slow Monolith pipeline steps
    • Tests of every component of the Monolith have to be run

    View full-size slide

  7. • Separation of concerns could be better
    • Billing, Check and Invoice are completely different things
    • Tied to slow Monolith pipeline steps
    • Tests of every component of the Monolith have to be run

    View full-size slide

  8. • Separation of concerns could be better
    • Billing, Check and Invoice are completely different things
    • Tied to slow Monolith pipeline steps
    • Tests of every component of the Monolith have to be run
    • Teams should be focused
    • Context of each team should be contained

    View full-size slide

  9. “ a suite of small services, each running in its own process
    and communicating with lightweight mechanisms, often
    an HTTP resource API
    “ built around business capabilities and independently
    deployable by fully automated deployment machinery
    - James Lewis and Martin Fowler

    View full-size slide

  10. Redis-backed Queue
    Billing Check Invoice
    Monolith

    Done

    View full-size slide

  11. Required Standard

    View full-size slide

  12. Feature Parity

    View full-size slide

  13. Feature Flags

    View full-size slide

  14. Feature Flags

    View full-size slide

  15. Circuit Breaking

    View full-size slide

  16. Circuit Breaking

    View full-size slide

  17. Orchestration vs. Choreography

    View full-size slide

  18. Access by Reference

    View full-size slide

  19. Communication

    View full-size slide

  20. Distributed Tracing Systems

    View full-size slide

  21. Questions?
    onfido.com/jobs

    View full-size slide