Sireesh Ganagam wrote:
why can't we scale a server with 100 cpu and 100 TB RAM ? am i sound crazy but yet i want to know the limitations.
You have to scale a server based on the scarce resource. If your application is mostly waiting for data, either via the network or slow disks, because they are not fast enough, then it doesn't matter if you add more threads, more cpu, or more memory. If the application can't keep 10 cpus and 1 GB of memory busy due to a scarce resource, how is it going to keep 100 cpus and 100 TB busy?
You need to confirm that either the CPU or the memory is a scarce resource before considering adding to it.
Sireesh Ganagam wrote: If i have application that needs to run with 1000 threads? how do i decide how many CPU and RAM it need?
I think you have misunderstood what Henry said. The general consensus is that more CPU means a faster processing and more RAM means greater memory to utilize to load content.
However, Disk/IO/Networks are speed limiters here. You need to first assess what those 1000 threads are actually doing. You can monitor CPU/TCPIP connections/Disk usage, etc.. and get the metrics as to what is saturated and then take a decision over the upgrade.
Sireesh Ganagam wrote:If i have application that needs to run with 1000 threads?
I think you have confused business requirements with implementation details. So let's start at the beginning... you seem to have fixed on an implementation which uses 1000 threads. Now, no application actually needs 1000 threads -- there are many ways to get things done in an apparently simultaneous way. So what's your business requirement which you have decided to implement with all those threads?
pie. tiny ad:
Building a Better World in your Backyard by Paul Wheaton and Shawn Klassen-Koop