Architecting Large Enterprise Projects @DevConf.CZ
-
Upload
markus-eisele -
Category
Technology
-
view
617 -
download
2
Transcript of Architecting Large Enterprise Projects @DevConf.CZ
1
Application Server
EAR EAR EAR
WAR
JAR JAR JAR JAR
JAR JAR WAR
JAR JAR
EAM <?>
LoadBalancer
•
•
•
•
•
•
•
•
5
•
•
•
•
•
•
•
6
•
•
•
7
8
9
10
11
12
•
•
•
•
•
•
•
•
•
•
13
14
15
16
17
http://martinfowler.com/articles/microservices.html
18
19
http://martinfowler.com/articles/microservices.html
20
21
http://akfpartners.com/techblog/2008/05/08/splitting-applications-or-services-for-scale/
22
23
AppServiceSDApp
ServiceSD
24
AppServiceSDApp
ServiceSD
AppServiceSD
AppServiceSD
25
JAX-RS
JSON-PWeb SocketServlet
JSFELJSP JSTL
Bean V
alid
ation
Inte
rcepto
rs
CD
I
Concurr
ency
JPA
JTA EJB JMS
Batch
JCA
Java EE
JavaMail
26
@Stateless@Path("/")public class CustomerOrderHistory{
@GET@Path(“order")@Produces("text/plain")String getOrderHistory();
// …}
27
ServiceAA
JAX-RS
EJB / CDI
JPA
JCache
28
29
30
31
Compute, Storage, Network
Host OS
Hypervisor
VM1
JVM
AppServ
serviceaa.war
32
33
Docker
Conta
iner 1
Conta
iner 2
Conta
iner 4
Conta
iner 3
Se
rvic
eA
A
Se
rvic
eB
A
Se
rvic
eC
T
Se
rvic
eX
Z
Compute, Storage, Network
Host OS
http://www.jboss.org/docker/
34
35
36
37
38
Container
ContainerContainerContainer
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
62
http://www.lordofthejars.com/2014/07/rxjava-java8-java-ee-7-arquillian-bliss.html
http://www.lordofthejars.com/2014/09/defend-your-application-with-hystrix.html
http://techblog.netflix.com/2012/02/fault-tolerance-in-high-volume.html
http://martinfowler.com/articles/microservices.html
http://microservices.io/patterns/microservices.html
http://techblog.netflix.com/2013/01/optimizing-netflix-api.html
http://www.infoq.com/articles/microservices-intro