[This] is absolutely true for application-server and database-server layers: At the Web-server layer, PCs running Linux can be a perfectly acceptable solution and slightly more cost-effective. |
Design your database into subject areas and entities -- don't rush the design. Review all application requirements and loads prior to committing to a database implementation. Test the system on paper, in diagrams. Find and productively employ experienced data modelers. |
We had no idea what the spikes and surges would be against our system. |
You simply can't take upon yourself the complete responsibility of putting together a bulletproof design, reacting to what are usually pretty aggressive schedule demands. We use consultants on the design side. We use consultants on the program management side. ... There is tremendous value to capturing and preserving the intelligence from consultants. ... It's often difficult to enable a high degree of cooperation between outsource consultants and in-house staff, but you've got to overcome that with human management. |