We are using VB.NET and ASPx for our project. we would like to separate the aspx pages and put them on the IIS server (web server) on one m/c and the business logic and DAL layer on another IIS server (application server) on a different m/c .The database is on another m/c. Is such a configuration possible ? If so how can it be implemented?


It can, but you will need to introduce some device to allow these two applications to share [some] state somehow. ASP's default state repositories (the Session object in particular) will be different on the separate machines.

The DAL may require very little context (that's one of the purposes of layered architecture, to limit interdependence), so you may be able to simply pass all that DAL needs to to its job as explicit arguments. Rather than being a real web application, the DAL could be accessed as a webservices.


You could put the business logic/DAL behind a web service on that machine. The business logic then calls directly across to the database server (if your physical configuration allows it) and your UI/ASPX pages call the web services.

That's the simplified version.

If I'm not mistaken the Microsoft .NET StockTrader Sample Application ( is a good one to look at for this type of tiered architecture.

Jason Snelders