18
© Copyright 2014 Pivotal. All rights reserved. © Copyright 2015 Pivotal. All rights reserved. 1 Spring Cloud/Netflix OSS Jay Lee(이창재) | Pivotal | Advanced Field Engineer January, 2016

CF Korea Meetup - Spring Cloud Services

  • Upload
    jay-lee

  • View
    200

  • Download
    2

Embed Size (px)

Citation preview

Page 1: CF Korea Meetup - Spring Cloud Services

© Copyright 2014 Pivotal. All rights reserved.© Copyright 2015 Pivotal. All rights reserved. 1

Spring Cloud/Netflix OSS

Jay Lee(이창재) | Pivotal | Advanced Field EngineerJanuary, 2016

Page 2: CF Korea Meetup - Spring Cloud Services

Monolithic Architecture

Relational Database

Data Access

Service

HTML JavaScript MVC

Service

Monolithic ApplicationBrowser

Page 3: CF Korea Meetup - Spring Cloud Services

Microservice Architecture

HTTP

HTTP

HTTP

HTTP

HTTP

HTTP

AMQPAMQP

RelationalDB

Key/ValueStore

GraphDB

Page 4: CF Korea Meetup - Spring Cloud Services

How many microservices?ELEVEN

Page 5: CF Korea Meetup - Spring Cloud Services

Rise of Netflix Platform

http://techblog.netflix.com/2013/01/announcing-ribbon-tying-netflix-mid.html

Page 6: CF Korea Meetup - Spring Cloud Services

Spring Cloud Services

Spring Cloud Services

Config Server Service Registry Circuit BreakerDashboard

Page 7: CF Korea Meetup - Spring Cloud Services

Spring Cloud�Distributed/versioned configuration

�Service registration and discovery

�Routing

�Service-to-service calls

�Load balancing

�Circuit Breakers

�Global locks

�Service Discovery

�Leadership election and cluster state

�Distributed messaging http://cloud.spring.io/spring-cloud-netflix/spring-cloud-netflix.html

Page 8: CF Korea Meetup - Spring Cloud Services

Config Server

http://www.infoworld.com/article/2925047/application-development/build-self-healing-distributed-systems-with-spring-cloud.html

Page 9: CF Korea Meetup - Spring Cloud Services

Netflix OSS – Eureka

Cloud Load Balancing And Failover Tool: Eureka! Service Discovery

Page 10: CF Korea Meetup - Spring Cloud Services

Netflix OSS – Zuul (API Gateway)

http://www.slideshare.net/MikeyCohen1/edge-architecture-ieee-international-conference-on-cloud-engineering-32240146

• Open source framework for dynamically reading, writing, and executing filters that act on incoming HTTP requests

• Dynamically compiled filters written in Groovy –Any JVM language supported

• Filters share state through a request scoped context

Page 11: CF Korea Meetup - Spring Cloud Services

Netflix OSS – Ribbon

Ribbon is a client side IPC library that is battle-tested in cloud. It provides the following features

• Load balancing• Fault tolerance • Multiple protocol (HTTP, TCP, UDP) support

in an asynchronous and reactive model• Caching and batching

Page 12: CF Korea Meetup - Spring Cloud Services
Page 13: CF Korea Meetup - Spring Cloud Services

Netflix OSS - Hystrix

Hystrix: Latency and Fault Tolerance for Distributed Systems

Page 14: CF Korea Meetup - Spring Cloud Services

http://cloud.spring.io/spring-cloud-netflix/spring-cloud-netflix.html

Page 15: CF Korea Meetup - Spring Cloud Services

http://cloud.spring.io/spring-cloud-netflix/spring-cloud-netflix.html

Page 16: CF Korea Meetup - Spring Cloud Services
Page 17: CF Korea Meetup - Spring Cloud Services

Netflix OSS links�Hystrix : https://github.com/Netflix/Hystrix

�Zuul : https://github.com/Netflix/zuul

�Ribbon : https://github.com/Netflix/ribbon

�Eureka : https://github.com/Netflix/eureka

�Netflix OSS : https://netflix.github.io/

Page 18: CF Korea Meetup - Spring Cloud Services

Pivotal Cloud Foundry with Spring Services

�Config Server

�Service Registry

�Circuit Breaker Dashboard

Demo : https://www.youtube.com/watch?v=bJvReWt2jLc

Demo : https://www.youtube.com/watch?v=Vd243GqrkMI

Demo : https://www.youtube.com/watch?v=tnVNiRn-TLw