Peter Yared, the CEO of newly launched ActiveGrid, makes an excellent case for dispensing with J2EE and all the paraphenalia of application servers. I'm glad I can quote him, because if it was just me saying this, right after putting the boot into ESB, everyone would just dismiss me as being anti-Java (apart, that is, from those who accuse me of being anti-Microsoft).
We must remember that the original point of the application server was to solve the big corporate impedance mismatch and arbitrate connections to overwhelmed back-end resources. Today:
There is no impedance mismatch, everything talks SOAP/HTTP
Back-end resources can now all support numerous transient connections
... So where is the application server of the future? It is a big text pump that is embedded in the various endpoints of an enterprise. There is nothing in the middle.
Peter's credentials, by the way, include being the former CTO of NetDynamics, the application server vendor acquired in 1998 by Sun. Astute readers will note that the one thing missing from the above scenario is some kind of fabric or bus that connects up all the various endpoints, which links back rather neatly to what I was saying in my previous post about ESB. But of course Peter's new company also has a proposed solution of its own, which I'll come to in a moment. First, let's move on to his other article, The Next Language, which explains why Java has become a big waste of time and resources in today's world of XML web services:
So let's look at the requirements for today's corporate applications ... Given these requirements, Java does not fare very well. Apparently what is needed is a language/environment that is loosely typed in order to encapsulate XML well and that can efficiently process text. It should be very well suited for specifying control flow. And it should be a thin veneer over the operating system.
Most Linux distribution in fact bundle three such languages, PHP, Python, and Perl ... they have the necessary ingredients to meet the requirements of the next corporate computing phase of "text pump" applications.
ActiveGrid represents a fundamental shift from traditional data center architectures, such as J2EE, by enabling transactional applications to be horizontally scaled across a transaction grid of low-cost computers, as contrasted to the traditional approach of scaling vertically on a small cluster of expensive multi-processor machines that must continually connect to backend systems.
... The value of transaction grids for mainstream business applications has been proven by a few forward-thinking companies like Google and Amazon whose experts have hand-crafted grids for in-house use. Until now, the benefits of grid computing have remained elusive for all but a few such companies. The ActiveGrid Grid Application Server software platform will enable corporate developers to easily create, integrate, deploy, and scale transaction grids within their own organizations ...
"J2EE and .NET applications were never designed with grids in mind. Just as you would never construct a modern building on top of debris from an old building, you should not rely on the existing technology base as a foundation for developing the next generation of enterprise computing. ActiveGrid's technology is a critical foundation for enabling applications to fully utilize the power of the transaction grid," said Jean-Louis Gassée, general partner at Allegis Capital.
Of course, calling its platform an application server is something of a marketing ploy since, as Peter has explained, an application server is the last thing you need. What ActiveGrid is really providing is a highly tuned "text pump" to occupy the fabric/bus space in a transaction-intensive enterprise data center. It's an interesting proposition, and one that highlights the immensely disruptive potential of XML standards-based services architectures. Some combination of XML web services grid/mesh/fabric/bus, once we all get through the experimentation stage and begin to agree on what works best, is going to obsolete every previous generation of integration middleware and that includes J2EE application servers.