microservice architecture

Download Microservice Architecture

Post on 12-Apr-2017

97 views

Category:

Technology

1 download

Embed Size (px)

TRANSCRIPT

  • Microservice Architecture

    RICH

  • Monolith

    http://odino.org/on-monoliths-service-oriented-architectures-and-microservices/

  • Microservices - a definition of this new architectural term

    James Lewis

    Martin Fowler

  • Microservice An approach to developing a single application as

    a suite of small services, each running in its own process and communicating with lightweight mechanisms, often an HTTP resource API. These services are built around business capabilities and independently deployable by fully automated deployment machinery. There is a bare minimum of centralized management of these services, which may be written in different programming languages and use different data storage technologies

  • Microservice An approach to developing a single application as

    a suite of small services, each running in its own process and communicating with lightweight mechanisms, often an HTTP resource API. These services are built around business capabilities and independently deployable by fully automated deployment machinery. There is a bare minimum of centralized management of these services, which may be written in different programming languages and use different data storage technologies

  • Microservice An approach to developing a single application as

    a suite of small services, each running in its own process and communicating with lightweight mechanisms, often an HTTP resource API. These services are built around business capabilities and independently deployable by fully automated deployment machinery. There is a bare minimum of centralized management of these services, which may be written in different programming languages and use different data storage technologies

  • Microservice An approach to developing a single application as

    a suite of small services, each running in its own process and communicating with lightweight mechanisms, often an HTTP resource API. These services are built around business capabilities and independently deployable by fully automated deployment machinery. There is a bare minimum of centralized management of these services, which may be written in different programming languages and use different data storage technologies

  • Monolithic

    http://www.coscale.com/blog/comparing-microservices-and-monolithic-applications-from-the-perspective-of-monitoring

    http://www.coscale.com/blog/comparing-microservices-and-monolithic-applications-from-the-perspective-of-monitoring

  • Characteristic Componentization via Services

    Organized around Business Capabilities

    Products not Projects

    Smart endpoints and dumb pipes

    Decentralized Governance

    Decentralized Data Management

    Infrastructure Automation

    Design for failure

    Evolutionary Design

  • Monoliths Microservices

  • Characteristic Componentization via Services

    Organized around Business Capabilities

    Products not Projects

    Smart endpoints and dumb pipes

    Decentralized Governance

    Decentralized Data Management

    Infrastructure Automation

    Design for failure

    Evolutionary Design

  • Melvyn Conway

    Any organization that designs a system (defined broadly) will produce a design

    whose structure is a copy of the organization's communication structure.

  • Characteristic Componentization via Services

    Organized around Business Capabilities

    Products not Projects

    Smart endpoints and dumb pipes

    Decentralized Governance

    Decentralized Data Management

    Infrastructure Automation

    Design for failure

    Evolutionary Design

  • Characteristic Componentization via Services

    Organized around Business Capabilities

    Products not Projects

    Smart endpoints and dumb pipes

    Decentralized Governance

    Decentralized Data Management

    Infrastructure Automation

    Design for failure

    Evolutionary Design

  • Characteristic Componentization via Services

    Organized around Business Capabilities

    Products not Projects

    Smart endpoints and dumb pipes

    Decentralized Governance

    Decentralized Data Management

    Infrastructure Automation

    Design for failure

    Evolutionary Design

  • Characteristic Componentization via Services

    Organized around Business Capabilities

    Products not Projects

    Smart endpoints and dumb pipes

    Decentralized Governance

    Decentralized Data Management

    Infrastructure Automation

    Design for failure

    Evolutionary Design

  • Polyglot programming / persistence

    http://martinfowler.com/bliki/PolyglotPersistence.html

  • Characteristic Componentization via Services

    Organized around Business Capabilities

    Products not Projects

    Smart endpoints and dumb pipes

    Decentralized Governance

    Decentralized Data Management

    Infrastructure Automation

    Design for failure

    Evolutionary Design

  • Characteristic Componentization via Services

    Organized around Business Capabilities

    Products not Projects

    Smart endpoints and dumb pipes

    Decentralized Governance

    Decentralized Data Management

    Infrastructure Automation

    Design for failure

    Evolutionary Design

  • Characteristic Componentization via Services

    Organized around Business Capabilities

    Products not Projects

    Smart endpoints and dumb pipes

    Decentralized Governance

    Decentralized Data Management

    Infrastructure Automation

    Design for failure

    Evolutionary Design

  • Microservice Java Framework

    Dropwizard

  • http://blog.takipi.com/java-bootstrap-dropwizard-vs-spring-boot/

  • Demo

    Code: https://github.com/RICH0423/Spring-Boot/tree/master/SpringBoot-Jersey-Swagger-Docker

    https://github.com/RICH0423/Spring-Boot/tree/master/SpringBoot-Jersey-Swagger-Docker

  • Referencehttp://www.martinfowler.com/articles/microservices.html

    http://www.martinfowler.com/articles/microservices.html

  • Thanks