Separate machines are not required. It is possible to run the firewall, Web server, transaction server, and database server all on the same machine. Although, this is not always the best solution. For security reasons, the firewall should be a separate machine. For performance reasons the Web server and transaction server should be on separate machines.
Performance is best when the database and transaction server reside on the same machine.
As traffic grows, the database server will likely need to move to a separate machine. Also, several transaction servers can run on separate machines to handle more traffic. Inc. All Rights Reserved.