Wednesday, September 23, 2015

Setting up infrastructure for a new development

When I setup a new software system, I will need the following:

  1. Database Server
  2. Application Server
  3. Code Repository Server
  4. A laptop / desktop for development
  5. Build System
    1. Build System Host Server
    2. Build System Test Server


Which means, at a minimum, we will need 5 servers. For a new developer with very limited requirements, this is probably too much cost.

So, how can we reduce cost?

1. Combine Database Server and Application Server into one.

2. Use Github (git) or Sourceforge (SVN) for Code Repository.

3. Use your laptop to run Build Host and Test.

This would be a good starting point. As you go along, you can divide your servers into different machines.

If you don't have heavy requirement, it is a good idea to use cheap CPUs - like Raspberry Pi.