When working with SharePoint 2010 Service Applications, you must create a lot of "plumbing" code. There is a service, a service instance, a service proxy, a service application, and a service application proxy.

Although there are some tutorials online, they just jump straight in. The docs on msdn.microsoft.com aren't any better.

Can someone explain in layman terms what is the purpose and responsibilities of all the above components?

1 Answer 1


Paolo Pialorsi has described it well in his book Microsoft® SharePoint® 2010 Developer Reference :

  • Service

    This is the actual service, with its own engine, data storage, and infrastructure. It can be hosted on a specific server of the farm, or it can be a third-pary service. For example, this could be an external ERP, or it can be a software component that will be installed in the farm.

  • Service Instance

    Represents a single instance of the service, running on a server of the farm. There can be multiple instances of a service running on multiple application servers. The service application architecture gives you the ability to provide services in a scalable, multi-server configuration, with a load balancer to dispatch requests to the servers.

  • Service Application

    This is a logical layer that makes the back-end infrastructure available to the farm. Whenever you use a service application, you do not care about where and how it is exposed. You do not care about the number and location of the physical service instances. You simply access the service application as a logical service.

  • Service Application Proxy

    This is the proxy that virtualizes the access to the service application. In general, it is used on front-end servers of the farm and allows accessing the service application transparently and independently from its actual location.

  • Service Consumer

    This is a page, a Web Part, or whatever else that runs on a server of the farm, consuming a service application through its service application proxy.

Below is the graphical view where each component stands in a Service Application :

enter image description here

  • Thank you for the explanation. I have a question though. What's the Service Application Proxy providing that the Service Application can't do? I mean, couldn't the service application be called directly (since it abstracts what's behind it) instead of having another layer in the Service Application Proxy?
    – JohnDoDo
    Commented Nov 25, 2011 at 8:21
  • Service application proxy handles all the communication between the SharePoint WFE and the Service application running on one of the back-end application servers. The proxy interrogate the SharePoint farm for the location of the service application’s WCF endpoint. Commented Nov 25, 2011 at 9:58

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.