vjug - building modular java applications in the cloud age

17
Building Modular Java Applications in the Cloud Age vJUG, March 2015

Upload: bert-ertman

Post on 20-Jul-2015

185 views

Category:

Software


0 download

TRANSCRIPT

Building Modular Java Applications in the Cloud Age

vJUG, March 2015

Observations

Extremely agile (first mover advantage)

Architecture (and code base)

should be able to cope with change

The case for modularity

Modularity is the ultimate agile tool!

Small, disposable, components

Prevents code rot on the architectural level

Isolate problems, focus work

Prevent (tight)

coupling

What we learned about OO design in university :

Promote cohesion

coupling

cohesion

Modules Service Lookups

Wha

t do

we

need

design

consequences

High-level enterprise APIs

Architectural focus on

modularity

Runtime dynamic module

framework

Right now, OSGi is the only option

let’s not reinvent the

wheel

for

mod

ular

ity?

Auth Blob stores MongoDB JPA Multi-tenancy OpenSocial Search Remote Services REST Template Web ...

Components

Stop talking… and show me code!

Products Rest

Products API

Products Service

MongoDB

Orders Rest

Orders API

Orders Service

MongoDB

Customers API

Customers Service

MongoDB

... Rest

... API

... Service

modularity

in action...

What about deployment?

Provisioning Server

Provisioning servers

Node

AWS Auto Scaling

1. Start Load Balancer

Apache ACE

2. register

3. register

4. provision deployment

package

Provisioning servers

Nodes are completely disposable

Automated cluster recovery

Nodes do not require maintenance

No “big” container

Wrap up

TakkGrazie

Thank you

Obrigado

MahaloDanke

Dank UMerci

Gracias