currently I have a site sits on one IIS7 server. When we deploy a new version of the site, we bring the site down and display an offline page. What I really want is have two same exact copies of the site sits in one IIS 7 server and load balance users among both sites. when we deploy a new version of the site, we will bring site1 down (users in site1 automatically routes to site2 on next postback), when site1 deployment is complete, bring site2 down (users in site2 being routes to site1 on next postback). is this even possible?
See my answer to this previous question:
Zero downtime uploads / Rollback in IIS
The big question is how session handling is done within your application. If it is at all tied to the server instance (in memory, etc.), you will need to fix that before attempting a solution like this.