Hi,
We are developing a web application where we are expecting about 100K users per month.
We currently have a complete version based on an MVC Model where struts is the framework, and the Model is regular java classes. We are running tomcat on linux.
Question 1:
Would Tomcat be able to handle this load or will an application server be required?
Question 2:
Are EJBs a must in this situation, and if yes, would stateless EJBs be enough?
Question 3:
What kind of hardware would be required to sustain such a load?
Thank you in advance
A
-
Web Application requirements (3 messages)
- Posted by: Atlas Casa
- Posted on: July 14 2003 18:18 EDT
Threaded Messages (3)
- Web Application requirements by Chandra Aryan on July 15 2003 01:27 EDT
- Web Application requirements by Preeti Ramesh on July 15 2003 08:39 EDT
- Web Application requirements by Atlas Casa on July 15 2003 09:27 EDT
-
Web Application requirements[ Go to top ]
- Posted by: Chandra Aryan
- Posted on: July 15 2003 01:27 EDT
- in response to Atlas Casa
Q1. Would Tomcat be able to handle this load or will an application server be required?
A1. I don't think Tomcat is right choice for this load. Also, if you have this big user base, it is a good idea to go for EJBs. Also, only if the Business Logic involved is very critical and large scale. For example if it is a simple shopping cart application with very few items on the catalog, then EJB is not suited again. In either case Tomcat is not a choice as per my view.
Q2. Are EJBs a must in this situation, and if yes, would stateless EJBs be enough?
A2. Again if there a lot of Business Logic involved and lot of database querying is involved in your computation, then EJB is a good solution. About stateless or stateful is really a judgment from your side.
Q3. What kind of hardware would be required to sustain such a load?
A3. I cannot give you a proper answer for this but in my opinion, Linux is good choice and if you are going for EJBs then JBoss in the case of less investment and WebLogic incase you have more to invest (very stable and lot of support etc..).
Some more items...
If you have many complicated business logic involved, then from a project management point of view you would have to invest a lot of man hours in case of EJBs especially if you don't have complete knowledge of it. In these cases, I would recommend a tool called OptimalJ by Compuware. Its a model driven tool that generates your EJB code from the UML Class Diagram. If you spend time in designing the UML diagram then generating the code is a snap. The best part being, you can change anything in the class diagram and again on a press of a button your code is ready. Its very difficult in other cases.
If you want more information on OptimalJ, email me at chandrra2000 at yahoo dot com
Good Luck,
Chandra -
Web Application requirements[ Go to top ]
- Posted by: Preeti Ramesh
- Posted on: July 15 2003 08:39 EDT
- in response to Atlas Casa
Hi,
When you say you are expecting 100K users per month, its not very clear. Do you mean that these 100K are unique users, will they be using the application everyday..?
You have to see what kind of average load your system should expect at any point of time, AND account for the peak times as well. Then decide on the technology which will be able to handle the peak times without crashing or significantly slowing down.
For a guideline of what factors to consider for ejb technology, you can refer to an article from the serverside itself: http://www.theserverside.com/resources/article.jsp?l=Is-EJB-Appropriate#
As for what type of EJBs to use (Stateless etc) totally depends on your application and the nature of the object / transaction they represent. But as a rule of thumb Stateless session beans are better in terms of performance, and DONT overuse entity beans.
As for the app server. My personal favourite is Weblogic on Linux. It's stable. OC4J is good too. (Havent used WebSphere, but some programmers swear by it).
Read the reviews before making a decision.
A thread for Orion review exists on serverside on:
http://www.theserverside.com/reviews/thread.jsp?thread_id=165
and for weblogic on:
http://www.theserverside.com/reviews/thread.jsp?thread_id=145
cheers! -
Web Application requirements[ Go to top ]
- Posted by: Atlas Casa
- Posted on: July 15 2003 09:27 EDT
- in response to Preeti Ramesh
Hi,
Thank you guys for your feedback. My thoughts were similar to yours, I just needed a confirmation from the experts. Truly, I wanted to avoid EJBs as much as possible. but no such luck.
Thank you again
A