Re: Does Oracle 10g make the Application Server (almost) insignificant?

From: Dave <davidr21_at_hotmail.com>
Date: 16 Feb 2004 07:51:52 -0800
Message-ID: <8244b794.0402160751.5475e910_at_posting.google.com>


"rcf<_no.SPAM_>" <"rcf<_no.SPAM_>"_at_wxs.nl> wrote in message news:<402bdf50$0$1583$e4fe514c_at_dreader15.news.xs4all.nl>...
> In my belief the valid reasons for having an application server/layer are:
> - fail-over/system availability: the application layer can be divided
> over many different nodes; failure of one will not result in system failure.
> - scalability: the application layer is deployed on a number of
> different, relatively cheap nodes - this number can easily be increased.
> - load balancing: this prevents one node to be a bottleneck while others
> have nothing to do.
> (But maybe there are more reasons...)
> So, the fact that the application layer is deployed on many, cheap nodes
> (servers) allows it to offer the services that made it imperative within
> the 3-tier concept.
>
> BUT:
> Since the introduction of Oracle10g, the typical enterprise scale
> database hardware will shift from one very expensive, high-end server to
> a farm of standardized, commodity priced components/servers. This means
> that you no longer need an application layer to have a scalable, fault
> tolerant system with flexible load balancing: the database layer can do
> this for you now! (Besides, the fault tolerance of the application layer
> wasn't of much use if you're database goes down.)
>
> So my conclusion is that for many – if not most – Oracle Internet
> applications, the application layer will become less important with the
> introduction of Oracle10g. The data layer will take over! Apart from
> some simple tasks like connection pooling and processing XML into a
> presentation format or a web service – and even these tasks can be done
> by the Oracle database! - there no longer seems to be a valid reason
> for having a robust application server.
>
> I'm very interested in other people's views on this subject.
>
> Regards,
>
> Roel

Roel -

I have wondered about this myself from time to time. I am by no means an expert, but the database is optimized for persistance and serving/processing information (though Oracle has a lot of additional built-in features.) An application server (I'm thinking in terms of a J2EE app server) is a more generic code container. If your application is mostly INSERT/UPDATING/DELETING/SELECTING, then you may be right. But what if you needed a real-time chat environment, or if you wanted to implement some specific caching algorithm, or you wanted a client request to spawn a multi-threaded process to do many things in parallel. Perhaps you could implement this in PL/SQL, but would it be the best place to do it? I'm not sure...

Dave Received on Mon Feb 16 2004 - 16:51:52 CET

Original text of this message