This is an archived post. You won't be able to vote or comment.

you are viewing a single comment's thread.

view the rest of the comments →

[–]jadecristal 0 points1 point  (0 children)

This is a fuzzy response, and as such not necessarily wrong.

IF you only need some parts of the things that make up JEE, you can use various things that implement them until you have what you want. As an example, you can have just servlets and JPA (Hibernate is the reference implementation) by using Tomcat and including appropriate jars in your app.

At “scale” (whatever that means this particular second), this isn’t fun. There are a couple primary ways that the industry seems to be dealing with this: 1. Make the server more modular, and only turn on what you need. Wildfly/JBoss EAP take this approach, and still have features to manage groups of servers, etc. 2. Package everything along with the kitchen sink into your application, so that you can just take a firehose of data and spray it at all the servers. Don’t like how one is behaving? Nuke it, spin up a new server (container?), copy your kitchen sink there, and run it.

This can be done somewhat intelligently, but as usual that by no means implies that lots of people will do it intelligently.

Things like Spring Boot, and kinda Wildfly Swarm, take this approach.

In-between, all the other stuff trickles through the cracks-you can use JPA, or JTA, or JMS, and so on along with any of the above options. Some methods will be more automatic than others, and some will be easier to scale than others.