Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
1
•
•
•
•
•
•
•
•
5
•
•
•
•
•
•
•
6
•
•
•
7
8
9
10
11
12
•
•
•
•
•
•
•
•
•
•
13
14
15
16
17
http://martinfowler.com/articles/microservices.html
18
19
20
21
http://akfpartners.com/techblog/2008/05/08/splitting-applications-or-services-for-scale/
22
23
App
ServiceSDApp
ServiceSD
24
App
ServiceSDApp
ServiceSD
App
ServiceSD
App
ServiceSD
25
JAX-RS
JSON-P
Web SocketServlet
JSFEL
JSP
JSTL
BeanValidation
Interceptors
CDI
Concurrency
JPA
JTA EJB JMS
Batch
JCA
Ja...
26
@Stateless
@Path("/")
public class CustomerOrderHistory
{
@GET
@Path(“order")
@Produces("text/plain")
String getOrderHi...
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
Container1
Container2
Container4
Container3
ServiceAA
ServiceBA
ServiceCT
ServiceXZ
Compute, Storage, Network
Ho...
34
35
36
37
38
Container
ContainerContainerContainer
39
40
41
42
43
44
45
46









47
48


49
50
51
•
•
•
•
52
53
54
56
http://www.lordofthejars.com/2014/07/rxjava-java8-java-ee-7-arquillian-bliss.html
http://www.lordofthejars.com/2014/09/...
ARCHITECTING LARGE ENTERPRISE JAVA PROJECTS - vJUG
ARCHITECTING LARGE ENTERPRISE JAVA PROJECTS - vJUG
ARCHITECTING LARGE ENTERPRISE JAVA PROJECTS - vJUG
Upcoming SlideShare
Loading in …5
×

ARCHITECTING LARGE ENTERPRISE JAVA PROJECTS - vJUG

5,844 views

Published on

Slides for my vJUG session:
http://www.meetup.com/virtualJUG/events/221218531/

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 (Java EE) applications that fit better into today's requirements and landscapes.

Published in: Technology

ARCHITECTING LARGE ENTERPRISE JAVA PROJECTS - vJUG

  1. 1. 1
  2. 2. • • • • • • • •
  3. 3. 5 • • • • • • •
  4. 4. 6 • • •
  5. 5. 7
  6. 6. 8
  7. 7. 9
  8. 8. 10
  9. 9. 11
  10. 10. 12 • • • • • • • • • •
  11. 11. 13
  12. 12. 14
  13. 13. 15
  14. 14. 16
  15. 15. 17 http://martinfowler.com/articles/microservices.html
  16. 16. 18
  17. 17. 19
  18. 18. 20
  19. 19. 21 http://akfpartners.com/techblog/2008/05/08/splitting-applications-or-services-for-scale/
  20. 20. 22
  21. 21. 23 App ServiceSDApp ServiceSD
  22. 22. 24 App ServiceSDApp ServiceSD App ServiceSD App ServiceSD
  23. 23. 25 JAX-RS JSON-P Web SocketServlet JSFEL JSP JSTL BeanValidation Interceptors CDI Concurrency JPA JTA EJB JMS Batch JCA Java EE JavaMail
  24. 24. 26 @Stateless @Path("/") public class CustomerOrderHistory { @GET @Path(“order") @Produces("text/plain") String getOrderHistory(); // … }
  25. 25. 27 ServiceAA JAX-RS EJB / CDI JPA JCache
  26. 26. 28
  27. 27. 29
  28. 28. 30
  29. 29. 31 Compute, Storage, Network Host OS Hypervisor VM1 JVM AppServ serviceaa.war
  30. 30. 32
  31. 31. 33 Docker Container1 Container2 Container4 Container3 ServiceAA ServiceBA ServiceCT ServiceXZ Compute, Storage, Network Host OS
  32. 32. 34
  33. 33. 35
  34. 34. 36
  35. 35. 37
  36. 36. 38 Container ContainerContainerContainer
  37. 37. 39
  38. 38. 40
  39. 39. 41
  40. 40. 42
  41. 41. 43
  42. 42. 44
  43. 43. 45
  44. 44. 46         
  45. 45. 47
  46. 46. 48  
  47. 47. 49
  48. 48. 50
  49. 49. 51 • • • •
  50. 50. 52
  51. 51. 53
  52. 52. 54
  53. 53. 56 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 https://sites.google.com/a/jezhumble.net/devops-manifesto/

×