A few years ago the concepts where easier to distinguish but today with virtual machines it is a bit harder. But Server, Node, Host and Cluster is about this:
A host mostly mean a physial comuputer that hosts multiple applications but can often be seen as equivalen to a server. A host can host mutiple nodes
A server is one physical computer or a virtual machine present itself as a computer. A server contais programs shared by many users like a web server or a application server like Tomcat or mail server. Each of these applications litens for things to do on a TCP port.
A node mostly mean a Server, as above, but can be mutiple applicaton (of the same kind) listening on differnt TCP ports. Nodes are mostly part of a cluster.
A Cluster are two or more nodes (or servers) workig toether to serve a huge aount of users.
A server, or node can serve maybe up to 1000 users (depending on appiction) and a cluster can then serve 1000 times numer of nodes users.
So Host Base startup means start on all nodes on that host whereas node based means start only on that node. All Nodes tend to use ONE database server.If some function need to do database maintenance it must run on only one node.
Thanks a lot Bernving, for the detailed explanation.
I have below doubt after this detailed explanation.
There is a big organisation(with 1 Lakh Employees) which is planning to use PEGA .
Within that big organisation there are 10 divisions, Each division is having 10 Units.So total Units is 100.
Each unit is having exactly 1000s employees(100 units X 1000 Employees = 1 Lakh Employees)
So we need to have 100 Applications .
Fortunately there are certain things that are common across the entire organisation , and certain things that are common across the entire divisions.
If as per the above statement i.e
A server, or node can serve maybe up to 1000 users (depending on appiction) ,
We need one node for each application whcih makes 100 nodes, let us assume it makes a cluster and they are hosted on a single computer .
Now my doubt here is , We are all placing the code that is at unit level in the node level , what about the rules that are common across division level and the organisation level ? Where we have to place, is it at all the 100 nodes, if so doesnt is duplication of data or do we need to place the common data in some other dedicated system.
I should have been very careful, not mentioning numbers. The number of users can be seen in many different ways. Number of concurrent users might be a lot lover than number of actual users by magnitudes (100 to 10,000 more)
Try to ping www.google.com. You should see different IP addresses each time, indicating another node or server in their cluster(s).
A user for google search is someone posting one query or pressing next on the result screen. As each users interaction with google search is very short they can serve many many users on one node. Google docs is more intensive so for that application they can serve much less users per node. Now the amount of users actively uses Google Docs is very low compared to number of users using google search.
Long story short, depending on your application you can have 1,000,000 of more occasional users but only 1000 concurrent users. The sizing of an application (number or users occational or concurrent, number of hosts, nodes and servers etc. is a complete science on its own. We do have tools for that with in pega to help size applications and can be used by people having experience with hardware sizing. Many firms also do licensing on the number of users split on concurrent or occational.