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

Awesome Tools to Level Up Your Spring Cloud Architecture - Spring I/O 2017

Awesome Tools to Level Up Your Spring Cloud Architecture - Spring I/O 2017

Getting up and running with Spring Cloud is a breeze. But once the initial setup is done, it needs to be complemented with an ecosystem that can cope with the extra operational complexity and quality concerns. While running Spring Cloud in production for years, we have integrated some interesting tools for documentation, operations and testing.

During this talk you will see a demo of an integrated platform based on Spring Cloud, including tools like Spring Cloud Contract, wiremock, saboteur, ELK, Spinnaker, Spring Boot Admin and more. One of these tools is a dashboard for visualising Spring Cloud microservice architecture, which has recently been open sourced.

Documenting, testing, troubleshooting, and monitoring highly distributed systems in microservice architectures is hard. Finding quality, complementary tools in the wilds of open source can be even harder. Join this talk for a pragmatic look at taming some of the challenges of running microservices in production.

Andreas Evers

May 18, 2017
Tweet

More Decks by Andreas Evers

Other Decks in Technology

Transcript

  1. ZUUL EUREKA CONFIG SERVER SPRING BOOT µS HYSTRIX DASHBOARD TURBINE

    CONFIG BUS DATA FLOW ZIPKIN (SLEUTH) ATLAS TASK STREAM
  2. ZUUL EUREKA CONFIG SERVER SPRING BOOT µS HYSTRIX DASHBOARD TURBINE

    SPRING BOOT ADMIN MICROSERVICES DASHBOARD SPINNAKER CONFIG BUS DATA FLOW ZIPKIN (SLEUTH) ATLAS TASK PROMETHEUS CONTRACT REST DOCS SONAR / OWASP / … WIREMOCK TROUBLEMAKER ELK STREAM SABOTEUR
  3. What’s the compliancy & maturity of the services? How can

    I accommodate recruitment & knowledge sharing? What is the technical debt of the services? Which teams do I need to chase? Are budget & priorities in line with the architectural goals? How do I manage change in a DevOps organisation? “
  4. What functionality can I reuse? Which resources are exposed by

    what services? Which events & messages are sent back and forth? Which services are impacted by a change? How does a functional flow travel through the layers of the architecture? What is coming up, & can I define the future state of the ecosystem? “
  5. Which versions are deployed where? Are my deployments successful? Which

    versions do my dependencies have? Where can I find everything related to my services? “
  6. HTTP 500 Random Data Malformed Data Empty Response Total Network

    Partition Remote Service Not Listening to Port Packet Loss TCP Connection Timeout (~ firewall)
  7. Six principles for building fault tolerant microservices on the JVM

    by Christopher Batey https://www.youtube.com/watch?v=dKWNZnuZhd0
  8. interface CompactView{}; class Car { @JsonView(CompactView.class) private String brand; private

    int doors; ... } @RestController class CarController { @JsonView(CompactView.class) @GetMapping("/car") public String getCar() { return new Car("BMW", 5); } }
  9. interface V1{}; interface V2{}; class Car { @JsonView(V1.class) private String

    brand; @JsonView(V2.class) private int doors; ... }
  10. @RestController class CarController { @GetMapping(path = "/car", produces = "application/vnd.pvt.car.v1+json")

    @JsonView(V1.class) public String getCarV1() { return new Car("BMW", 5); } @GetMapping(path = "/car", produces = "application/vnd.pvt.car.v2+json") @JsonView(V2.class) public String getCarV2() { return new Car("BMW", 5); } }
  11. AWS re:Invent 2016: Multi-Region Delivery Netflix Style (DEV311) by Andy

    Glover https://www.youtube.com/watch?v=1HiilTXQo4w
  12. ZUUL EUREKA CONFIG SERVER SPRING BOOT µS HYSTRIX DASHBOARD TURBINE

    SPRING BOOT ADMIN MICROSERVICES DASHBOARD SPINNAKER CONFIG BUS DATA FLOW ZIPKIN (SLEUTH) ATLAS TASK PROMETHEUS CONTRACT REST DOCS SONAR / OWASP / … WIREMOCK TROUBLEMAKER ELK STREAM SABOTEUR
  13. ZUUL SPRING CLOUD SERVICES SPRING CLOUD SERVICES SPRING BOOT µS

    SPRING CLOUD SERVICES SPRING CLOUD SERVICES PCF APPS MANAGER MICROSERVICES DASHBOARD CONCOURSE, SPINNAKER CONFIG BUS DATA FLOW ZIPKIN (SLEUTH) ATLAS TASK PCF METRICS* CONTRACT REST DOCS SONAR / OWASP / … WIREMOCK TROUBLEMAKER PCF LOG SEARCH PCF METRICS* STREAM SABOTEUR