Running multiple instances of SQL Server on the same physical server should generally be avoided because each of the instances will have to fight over hardware resources, hurting the performance of all the instances.
Generally speaking, there are two reasons why you might want to run multiple instances on the same physical server.
1) You want to have multiple instances of SQL Server for development and testing, and you have a physical server that will handle these instances without performance issues.
2) You are faced with a situation (like a web hosting company) where you need to run many instances of SQL Server (because each one has a different administrator), and the instances are not very busy, and the hardware is powerful enough to run all of the instances without performance issues.]]>