Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

one high-end server with one Application Server or multiple Application Servers?

Tags:

java

jvm

If I have a high-end server, for example with 1T memory and 8x4core CPU...

will it bring more performance if I run multiple App Server (on different JVM) rather than just one App Server?

On App Server I will run some services (EAR whith message driven beans) which exchange message with each other.

btw, has java 64bit now no memory limitation any more? http://java.sun.com/products/hotspot/whitepaper.html#64

like image 349
rnd_nr_gen Avatar asked Dec 20 '25 08:12

rnd_nr_gen


1 Answers

will it bring more performance if I run multiple App Server (on different JVM) rather than just one App Server?

There are several things to take into account:

  • A single app server means a single point of failure. For many applications, this is not an option and using horizontal and vertical scaling is a common configuration (i.e. multiple VMs per machine and multiple machines). And adding more machines is obviously easier/cheaper if they are small.

  • A large heap takes longer to fill so the application runs longer before a garbage collection occurs. However, a larger heap also takes longer to compact and causes garbage collection to take longer. Sizing the VM usually means finding a good compromise between frequency and duration (in other words, you don't always want to give as much RAM as possible to one VM)

So, to my experience, running multiple machines hosting multiple JVM is the usual choice (and is usually cheaper than a huge beast and gives you more flexibility).

like image 90
Pascal Thivent Avatar answered Dec 22 '25 20:12

Pascal Thivent



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!