Archive for April, 2012

Custom Solutions on Multiple Server SharePoint Farm

April 23, 2012

Consider following basic Farm Configuration

The Web Frontend Server processes the requests and the application server is designated for other applications like search. According to Microsoft best practices you should turn off the “Microsoft SharePoint Foundation Web Application” service on the application server.

If you do this and you have a solution that contains web, site or webapplication scoped features your solution will be deployed only on the web front end server. This is pretty bad if you have timer jobs that should run on the application server. The dlls on the application server are missing and the timerjob will fail.

Here are your options:

  1. Turn the “Microsoft SharePoint Foundation Web Application” role on again. The drawback is that you in this do not follow the best practices from Microsoft. The other drawback ist that the web applications will take resources on the App Server (RAM, Applicaiton pools)
  2. Turn of the timer job service on the application server. The drawback is that you actually disable the application server and change the farm to single farm solution.
  3. Split the solutions
Split the solution into two separate solutions.

The first solution will contain the farm timer jobs and farm scoped features and will be deployed globally. It means also on the application server. The other solution will contain all web, site or webapplication scoped features and will be deployed into your web application as before.

One thing you have to do is to change the deployment type of the farm scoped solution to Application Server. Open the package folder in the solution and in the properties window change the deployment server type to ApplicationServer. See screenshot

The other nice thing that you could do is to create an activationdependency from the WFE soltuion to the APP server solution.