Document Converter Services Overview
Published: May 2010
SharePoint Foundation provides interfaces for implementing the two Windows SharePoint Services services that are needed to enable document converters. This topic details the requirements for creating and registering those services with SharePoint Foundation.
Document conversion can be resource intensive, especially when performed in batches. To enable document converters in SharePoint Foundation, you must create and deploy two services to manage document conversions, including load balancing, prioritizing, and scheduling the conversions:
Document Conversion Load Balancer Service This service balances the document conversion requests from across the server farm. When it receives a converter request from SharePoint Foundation, the document conversion load balancer service must return a URI to the appropriate document conversion launcher service. SharePoint Foundation connects to the specified launcher via .NET Remoting and requests that it convert the specified document.
Document Conversion Launcher Service This service schedules and initiates the document conversions. When SharePoint Foundation passes a document conversion request to the document conversion launcher service, the service must call the appropriate document converter.
The document converter then performs the document conversion.
You must enable and configure these two services for your server farm before you can implement document converters.
The assembly that you create to act as a document conversion load balancer service must adhere to the following requirements:
The load balancer service must implement the IHtmlTrLoadBalancer interface.
The load balancer service must be a Windows service.
The load balancer service must use .NET Remoting for communication. The channel should be registered on "http://server:port/HtmlTrLoadBalancer", where:
server is the computer name of the load balancer.
port is the port that the channel uses.
Optionally, the load balancer service can include configuration information for the ports used during remote communication.
The assembly that you create to act as a document conversion launcher service must adhere to the following requirements:
The launcher service must implement the IDocumentConversionsLauncher interface.
The launcher service must be a Windows service.
The launcher service must use .NET Remoting for communication.
Optionally, the launcher service can include configuration information for the ports used during remote communication.
In addition to creating the two services discussed previously, you must also create an assembly that enables you to manipulate those services from within SharePoint Foundation. You need this go-between assembly to be able to list the document conversion load balancer service as an option in the SharePoint Foundation Central Administration user interface and object model.
For control of the launcher service, the go-between assembly must implement the following class and interface:
Optionally, for greater control of the launcher service, the assembly can implement the following classes:
To install the document converter services, complete the following steps:
Install registry keys for the go-between assembly.
Install the load balancer service and launcher service.
Install the go-between assembly in the global assembly cache.
Register the load balancer and launcher services, as you would any other SharePoint Foundation service.