6. API or Web Calls
memcached
Cassandra
Web service
S3 bucket
7. We’re here to help you get to global scale…
Apache Licensed Cloud Native OSS
http://netflix.github.com
8.
9.
10.
11.
12. Web App
Front End
(REST
services)
Micro service Implementation
Hystrix Call “Auth Service”
Ribbon REST client
Eureka
Server(s)
App Service
(auth-service)
with Eureka
Fallback
Implementation Karyon
18. Hardware Will Fail
Slowly Changing
Large Scale
Speed
Everything Is Broken
Rapid Change
Large Scale
Everything Works
Slowly Changing
Small Scale
Hardware Will Fail
Rapid Change
Small Scale
Scale
26. Web App
Front End
(REST
services)
Micro service Implementation
Hystrix Call “Auth Service”
Ribbon REST client
Eureka
Server(s)
App Service
(auth-service)
with Eureka
Fallback
Implementation Karyon
27.
28.
29.
30.
31.
32. Client
A
p
a
c
h
e
Server (Karyon)
HTTP Admin Console
Eureka (Service
Registry)
Apache
Tomcat
Ribbon
Load
Balancing
Metrics
(Servo)
Eureka
Integration
Bootstrapping (Governator)
Metrics (Servo)
Eureka Integration
Registration
Fetch Registry
H
T
T
P
C
L
I
E
N
T
H
y
s
t
r
i
x
EV
Cac
h
e
33. Client (Ribbon 2.0) Server (Karyon)
Admin Console
Eureka (Service
Registry)
Ribbon Transport
Load
Balancing
Metrics
(Servo)
Eureka
Integration
Bootstrapping (Governator)
Metrics (Servo)
HTTP
Eureka Integration
Registration
Fetch Registry
Ribbon
Hystrix
EVCache
Rx
Ne
t
t
y
RxNetty
UDP
TCP
WebSockets
SSE
34. @ArchaiusBootstrap
@KaryonBootstrap(name
=
"hello-‐netflix-‐oss")
@Modules(include
=
{HelloNossApp.KaryonJerseyModuleImpl.class,
KaryonWebAdminModule.class,
KaryonEurekaModule.class})
public
final
class
HelloNossApp
{
public
static
class
KaryonJerseyModuleImpl
extends
KaryonJerseyModule
{
protected
void
configure()
{
super.configure();
bind(AuthenticationService.class).to(AuthenticationServiceImpl.class);
}
public
int
serverPort()
{
return
8888;
}
public
int
shutdownPort()
{
return
8899;
}
public
void
configureInterceptors(GovernatorHttpInterceptorSupport<ByteBuf,
ByteBuf>
interceptorSupport)
{
interceptorSupport.forUri("/hello").interceptIn(AuthInterceptor.class);
}
}
}
40. Regional Load Balancers
Zuul – Traffic Shaping/Routing
AZ1 AZ2 AZ3
Data Data Data
Geo-located
Chaos Kong
Chaos Kong
Regional Load Balancers
Zuul – Traffic Shaping/Routing
AZ1 AZ2 AZ3
Data Data Data
Customer
Device
41.
42.
43. A/B Test
Engine
Personalization
Engine User Info Movie
Metadata
Movie
Ratings
Similar
Movies
API
Reviews
44. A/B Test
Engine
Personalization
API
Similar
Movies Reviews User
Info
Engine User Info Movie
Metadata
Movie
Ratings
45. A/B Test
Engine
Personalization
Engine
API
User
Movie
Movie
Similar
Info
Metadata
Ratings
Movies Reviews
46. User
Info
API
A/B Test
Engine
Personalization
Engine
Movie
Metadata
Movie
Ratings
Similar
Movies Reviews
47. A/B Test
Engine
Personalization
Engine
API
User
Movie
Movie
Similar
Info
Metadata
Ratings
Movies Reviews
48.
49. User Info
API
A/B Test
Engine
Personalization
Engine
Movie
Metadata
Movie
Ratings
Similar
Movies Reviews
50. A/B Test
Engine
Personalization
Engine
API
User
Movie
Movie
Similar
Info
Metadata
Ratings
Movies Reviews
51. Personaliza
tion Engine
User
Info
Movie
Metadata
Movie
Ratings
Similar
Movies
API
Reviews A/B Test
Engine
52. Personaliza
tion Engine
User
Info
Movie
Metadata
Movie
Ratings
Similar
Movies
API
Reviews A/B Test
Engine
Fallback
53. Personaliza
tion Engine
User
Info
Movie
Metadata
Movie
Ratings
Similar
Movies
API
Reviews A/B Test
Engine
Fallback