Complex business applications have quite a bit of back end business processes and activities that are hard to develop and manage. Business applications are typically developed using multi-tier architecture (Presentation, Business and Data).
Business logic traditionally is maintained in the Application Server in the form of application or Services. Apart from hosting the business logic, the application server provides services such as security, data services, transaction support, load balancing, message queue etc. Example could be Web logic Application Server, Web Sphere Application Server in the Java World.
In the Microsoft World, Services Infrastructure in Windows Server acts as the Application Server. By having .NET and IIS on top, it helps in running custom applications developed using WCF and WF, run distributed services, queue management, and perform other distributed tasks across multiple servers.
Though it’s been called as an Application server, so far, it has provided only very limited hosting services for WCF and WF applications inside IIS with limited tracking, monitoring, and management functionality.
To host a Workflow application, one must define their own host (either to run inside IIS or as a part of a custom Windows service).
Is there a better Solution for this?
Yes. Its in the form of Windows Server AppFabric. AppFabric extends Windows Server to provide enhanced hosting, management, and caching capabilities for web applications and middle-tier services. AppFabric will provide a way to create scalable and manageable server side applications.
Image Source : http://msdn.microsoft.com/en-us/library/ee677255.aspx
Windows Server AppFabric has two major components
- AppFabric Caching Services: Caching Services which can speed up access to frequently accessed data.
- AppFabric Hosting Services: Services that helps to host and manage services created using Workflow foundation and Windows Communication foundation.
IMHO, Windows Server AppFabric is a great server side solution. Recently we happened to implement this for one of our clients and i was impressed with the features it provides.