tomee-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Romain Manni-Bucau <>
Subject Re: "Java Application Servers are Dead"
Date Sun, 11 May 2014 20:02:32 GMT

read quickly and will answer the same way.

Basically my opinion today is dev have a lot of needs. EE is not
perfect but matches one important need: something shareable and stable
enough to let enterprises base their future on it.

Of course you can use directly netty and disruptor to do something
very fast and efficient but in 1 month you'll need a lot of time to
maintain it and make it evolving + you need a lot of knowledge to
develop it well.

Another one great point of EE/TomEE is that it works out of the box
(opposed to spring for instance where you need to wire it yourself).

Each time a new framework pops up there are posts saying "all is dead
excepted it"...see post some years ago about it is just
another technology but nothing is dead cause of it :).

Romain Manni-Bucau
Twitter: @rmannibucau

2014-05-11 21:53 GMT+02:00 Jonathan Fisher <>:
> I like to get on Hacker News and read what what's new. Java is usually
> flogged by the dynamic language mob, so I was surprised to see some
> positive articles about Java.
> I don't mean to start friendly fire, I love reading about all sorts of Java
> development. But after reading the two articles, the piece that stuck with
> me the most is "Java Application servers are Dead." Being a TomEE addict, I
> couldn't disagree any more :) I got the feeling the first link probably
> hasn't heard of or used TomEE.
> Anyway, it got me thinking though, why *do* I use TomEE instead of
> something like Jetty? Here's my justifications. I'd be interested to see
> why others use TomEE as well!
> * XA Transactions: Yes, they're important. Specifically, JMS/JPA
> interactions.  If I want to want to send a message only if rows are
> successfully committed to the database, automagic XA transactions in JEE
> are a godsend.
> * Packaging: Spend any time configuring a complex Pip or Gemfile and you'll
> appreciate how awesome WAR packaging really is.
> * CDI: Do people really not use dependency injection complex applications
> and expect them to maintainable?
> * SOA is dead: No, you should not use REST services internally _for
> everything_ unless determined you need to implement the
> pattern to allow for
> failover reliability. Always use modules and DI first, then SOA.
> "Everything is a service" is a terrible way to build software systems.
> Having DI supported right in the Runtime via CDI/EJB3 is an awesome
> strength.
> I think the following are valid points:
> * I do end up running once instance of TomEE per application. This isn't
> always a bad thing, having one JVM per app allows better tuning.
> Fortunately, TomEE has very little ram overhead (maybe 24MB on a bad day),
> so this isn't a big issue. Combine this with LXC containers and you have
> great isolation.
> * Cruft. Java EE and the SDK need a cleanout to get rid of CORBA, EJB v1-2,
> old JSF crap, old JMS apis, etc. Yes it breaks your applications built in
> 2005. Sorry about it. Oracle will take your money if you want to run old
> software.
> * Over-engineered APIs: I had a beer with David Blevins a year or two back,
> and we joked how the Resource Adapter API was probably the most important
> API in JEE, yet it is the most confusing. Brings a tear to my eye.
> Anyway, love to hear everyone else's thoughts
> Cheers
> *Jonathan Fisher*
> *VP - Information Technology*
> *Spring Venture Group*

View raw message