David Ward wrote:
Pavel,
Feel free to run your own performance tests (always run your own tests since applications and configurations differ), however leverage the cummulative wisdom and experience that exists on this list (it's very significant here) as a good starting point.
Generaly speaking, the advice I gave you (supported by others' comments) holds true in most circumstances. If you've got an extra box laying around, then cannibalize the CPU and RAM out of it and stick it into your main box.
Also know that serialization is not the only issue. If you split the boxes up, you've *also* introduced network latency between the two, other RPC/RMI issues, and quite possibly more container interceptors/invokers that need to get involved (not positive about this one, others on this list could verify).
Whether or not (or how) you explain it to your customer(s) is up to you. Mostly what we suggested has become the domain of common knowledge, but if you need to back it with hard numbers either do some searching online, ask people on this list if they've run some tests that they could share with you, or - last but not least - run the tests yourself.
Have fun,
David
--
Pavel Kolesnikov wrote:
OK, thanks for you response, I understand your point.
But what should I do, if there's a need for better perfomance
and customer says "well, I could buy another CPU or more RAM, but
I have also an extra unused machine here - couldn't we use it
instead of buying new CPU or RAM?" Should I try to explaint him
it's not a good idea?
I thought splitting my app between two machines should also give
me a significant performance even though the serialization overhead, shouldn't it?
Pavel
On Thu, 21 Nov 2002, David Ward wrote:
Maybe I'm coming in late on this thread...
What *I* don't understand is why you think having your web container on one machine and your ejb's on another would perform better. Having your servlets run in the same JVM as your ejb's allows your servlets to access them with local interfaces, and you can pass your objects by reference instead of by value (read: serialization unecessary). You will get much better performance if everything is in the same JVM. Just beef up your box instead of spending $$$ on two.
Now, if you want to have Apache serve up some static content and front your app, that's fine (especially if for security reasons you want your app server behind a firewall and your web server in the dmz). However, it will forward dynamic requests to your app server - where your web container and ejb tier coexist in the same process.
David
--
Pavel Kolesnikov wrote:
On Wed, 20 Nov 2002, Dain wrote:There is no reason you have to separate the web container from the EJB container.
I don't understand this - what if I want to run my application on two machines because of performance reasons? What should I do instead of putting my webapp on one machine and my EJBs on the second one? Pavel------------------------------------------------------- This sf.net email is sponsored by:ThinkGeek Welcome to geek heaven. http://thinkgeek.com/sf _______________________________________________ JBoss-user mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/jboss-user------------------------------------------------------- This sf.net email is sponsored by:ThinkGeek Welcome to geek heaven. http://thinkgeek.com/sf _______________________________________________ JBoss-user mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/jboss-user
-- xxxxxxxxxxxxxxxxxxxxxxxxxxxx | Emerson Cargnin | | Analista de Sistemas Sr. | | Tel : (051) 3358-4959 | | SICREDI Serviços | | Porto Alegre - Brasil | |xxxxxxxxxxxxxxxxxxxxxxxxxx| ------------------------------------------------------- This sf.net email is sponsored by:ThinkGeek Welcome to geek heaven. http://thinkgeek.com/sf _______________________________________________ JBoss-user mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/jboss-user