Są dwa podejścia:
Albo od począku zakładasz że twoja aplikacja rozrośnie się nie wiadomo jak (a'la snapchat) i od razu projektujesz specjalne rozwiązania.
Albo projektujesz coś normalnego co wytrzyma 5-10k użytkowników i można do tego dołożyć doraźnie sprzętu jakby miało problemy z wydajnością.
Zdecydowanie polecam drugie wyjście, wychodzi taniej, a jak już zdobędziesz popularność, to i fundusze na optymalizację/rewrite się znajdą.
https://blog.codinghorror.com/hardware-is-c...-are-expensive/(Autor to jeden z twórców StackOverflow)