I have been wondering for a long time if there are systems that have to "scale up" (onto a more powerful, more expensive server) rather than "scale out" by being split across many smaller servers.
Do such systems exist, and if so, is there anything in particular that tends to cause systems to need to be scaled up, rather than scaled out? (For example, maybe ACID-complaint database transactions, or other strong data integrity requirements create this need.)
Since scaling up seems like it would bring much higher hardware costs than scaling out, it seems like something you would want to avoid, if possible, but I'm not sure if it is always avoidable or not.
So, are there systems that can't be scaled out, and have to be scaled up instead? What can cause this, and how would you identify such a system? (Do they generally share some characteristics in common that might make them more easily identifiable?)