What is the rule of thumb when it is necessary for sizing reasons to create another DC within your application? I'm writting an application that has grown beyond the initial spec and I was wondering how big is too big for one DC. Is it based on models, views, controllers, activity, etc?
There is no thumb rule as such.
Few points that can be considered are :
1) Move common functionalities to one dc. e.g models.
If there is common business logic, move them to one dc and re-use.
2) Few logic if build once might need be touched again, hence build is not required for them. e.g a "Huge" Model. The model can be one dc, build once and never touched again for build. If it kept in some dc where other changes are frequent, the build takes more time.
3) Also, separation of logic. Bringing common funtionalities at one place.e.g all search logic in one dc, separate dc for data base access etc.
This is also a nice wiki for similar information.
<a href="https://www.sdn.sap.com/irj/sdn/wiki?path=/display/wdjava/usecomponentsinbiggerWebDynproprojects+(componentization)&">Compotenization Wiki</a>
Ashwani Kr Sharma