The simplest server would be the following: 1 Load Balancer 2 Web Servers 1 DB server As far as session storage goes, it is not recommended to store in the Database. While it is fully supported, it places an additional load on the DB. Redis or Memcache would be better suited for this task. They are also fully supported out of the box for Community Edition. **A couple of tips:** 1. Have both web servers leverage bytecode caching such as APC or OPCache. 1. Strip Apache of all unused modules to optimize memory consumption, by default, you should only need `mod_php`, `mod_expires`, `mod_deflate`, `mod_mime`, `mod_dir`, `mod_authz_host`, and `mod_authz_user`. 1. Configure your dedicated database server to maximize `innodb_buffer_pool_size`, `query_cache_limit`, `query_cache_size`, `thread_cache_size`, `max_connections`, and `thread_concurrency`. **A few more tips (your results may vary):** 1. Have the Load Balancer set to Round-Robin instead of Sticky sessions, (even distribution of load). 1. Turn off `AllowOverride All` and place your .htaccess values inside of your `VirtualHost` configuration for apache (fewer file requests). There are guides available from Magento to give you more details about configurations: http://www.magentocommerce.com/whitepaper/