Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Usenet -> c.d.o.server -> Scalability issues with Oracle8i EJB

Scalability issues with Oracle8i EJB

From: <tsalzsie_at_hotmail.com>
Date: Wed, 03 Nov 1999 07:58:32 GMT
Message-ID: <7vopv8$cah$1@nnrp1.deja.com>


We are currently developing a large internet-application with expectations to have more than 100,000 users visting our site each day (user numbers probably will increase quite fast).

We do have a backend based on Oracle 8.0.5 (denoted as CLUBDB), an Oracle8i database (denoted as WEBDB) connected to the backend database CLUBDB using an Oracle database link. We use Apache 1.3.9 running servlets, these servlets are connected to the WEBDB via IIOP since they only talk to EJB's running inside the WEBDB (no JDBC connection from the servlets to the DB). These EJB's do some kind of JDBC-based logic and further call some PL/SQL stored procedures within CLUBDB - hence, we misuse Oracle8i as application-server with little database-tasks.

Our application is kind of a club-system where a member needs to sign on, can change his address data, can search for other members, view his account-statement, etc. We came up with basically three different EJB's:
- SignupEJB (for the signup procedure)

Now, we are a little concerned about scalability. We use a Sun E6500 as backend database machine running the CLUBDB, a Sun E450 4 CPU, 2 GB RAM as web-server and an Compaq Intel-based 8CPU, 4 GB RAM with Solaris/Intel for the WEBDB-Oracle8i. I'm especially worried about the Compaq-box, but believe Oracle8i/EJB needs many CPU's (MTS-features) and lots of RAM. Any recommendations regarding the sizing of our machines ?

Another issue is software scalability. We discovered that the lookup-routine for EJB's using JNDI is quite slow, so that we need to provide some kind of connection pooling. The servlets hold a pool of IIOP-connections to the WEBDB, i.e. a pool for each of the three mentioned EJB's.
I found a very nice EJB-example on the technet.oracle.com-site where Oracle suggests to cache a number of EJB's in a hashtable and instantiate if necessary new EJB's using thisServer/thisSession mechanisms. This would mean that we would provide one ClubEJB that holds internally a hashtable for each of the three EJB's. The servlets would initially instantiate a number of ClubEJB's and could hold a pool of connections to these ClubEJB's.
I was wondering whether someone out there did already some scalability testing with Oracle8i-EJB's using some of the approaches I just discussed briefly here.

We are going to in production next year March, so I believe Oracle 8.1.6 is going to be available by then. Any new features that could be helpful for our scenario ?

Thanks in advance, Timo.

Sent via Deja.com http://www.deja.com/
Before you buy. Received on Wed Nov 03 1999 - 01:58:32 CST

Original text of this message

HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US