38
1

Architecting Large Enterprise Java Projects

Embed Size (px)

DESCRIPTION

In the past I've been building component oriented applications with what I had at hand. Mostly driven by the features available in the Java EE standard to be "portable" and easy to use. Looking back this has been a perfect fit for many customers and applications. With an increasing demand for highly integrated applications which use already available services and processes from all over the place (departmental, central or even cloud services) this approach starts to feel more and more outdated. And this feel does not come from a technology perspective but from all the requirements around it. Having this in mind this post is the starting point of a series of how-to's and short tutorials which aim to showcase some more diverse ways of building (Enterprise Java) applications that fit better into today's requirements and landscapes.

Citation preview

Page 1: Architecting Large Enterprise Java Projects

1

Page 2: Architecting Large Enterprise Java Projects
Page 3: Architecting Large Enterprise Java Projects

Application Server

EAR EAR EAR

WAR

JAR JAR JAR JAR

JAR JAR WAR

JAR JAR

EAM <?>

Page 4: Architecting Large Enterprise Java Projects

4

••••••••••

Page 5: Architecting Large Enterprise Java Projects

5

•••

Page 6: Architecting Large Enterprise Java Projects

6

Page 7: Architecting Large Enterprise Java Projects

7

Page 8: Architecting Large Enterprise Java Projects

8

Page 9: Architecting Large Enterprise Java Projects

9

Page 10: Architecting Large Enterprise Java Projects

10

••••••••••

Page 11: Architecting Large Enterprise Java Projects

11

Page 12: Architecting Large Enterprise Java Projects

12

Page 13: Architecting Large Enterprise Java Projects

13

Page 14: Architecting Large Enterprise Java Projects

14

Page 15: Architecting Large Enterprise Java Projects

15

Page 16: Architecting Large Enterprise Java Projects

16

Page 17: Architecting Large Enterprise Java Projects

17

Page 18: Architecting Large Enterprise Java Projects

18

Page 19: Architecting Large Enterprise Java Projects

19

Page 20: Architecting Large Enterprise Java Projects

20

JAX-RS

JSON-PWeb SocketServlet

JSFELJSP JSTL

Be

an

Va

lida

tio

n

Inte

rce

pto

rs

CD

I

Co

ncu

rre

ncy

JPA

JTA EJB JMS

Batch

JCA

Java EE

JavaMail

Page 21: Architecting Large Enterprise Java Projects

21

JAX-RS

JSON-PWeb SocketServlet

JSFELJSP JSTL

Be

an

Va

lida

tio

n

Inte

rce

pto

rs

CD

I

Co

ncu

rre

ncy

JPA

JTA EJB JMS

Batch

JCA

Java EE

JavaMail

Page 22: Architecting Large Enterprise Java Projects

22

Compute, Storage, Network

Host OS

Hypervisor

VM1 VM2

JVM

AppServ

Service

JVM

AppServ

Service

Page 23: Architecting Large Enterprise Java Projects

23

Page 24: Architecting Large Enterprise Java Projects

24

Compute, Storage, Network

Host OS

JVM

OSGi Runtime

Service Service Service

Page 25: Architecting Large Enterprise Java Projects

25

Compute, Storage, Network

Host OS

Conta

iner 1

Service

Conta

iner 1

Conta

iner 1

JVM JVM JVM

Service Service

Page 26: Architecting Large Enterprise Java Projects

26

Page 27: Architecting Large Enterprise Java Projects

27

Page 28: Architecting Large Enterprise Java Projects

28

Page 29: Architecting Large Enterprise Java Projects

29

Page 30: Architecting Large Enterprise Java Projects

30

Page 31: Architecting Large Enterprise Java Projects

31

Page 32: Architecting Large Enterprise Java Projects

32

Page 33: Architecting Large Enterprise Java Projects

33

Page 34: Architecting Large Enterprise Java Projects

34

Page 35: Architecting Large Enterprise Java Projects

35

Page 36: Architecting Large Enterprise Java Projects

36

Page 37: Architecting Large Enterprise Java Projects

37

Page 38: Architecting Large Enterprise Java Projects

38