一个服务应用程序除了可以为服务器场内的网站提供服务之外,还能发布给其他服务器场,为其他服务器场中的SharePoint网站提供服务。比如,如果企业中存在着多个服务器场,它们都需要某个服务器场中的“企业全局元数据”服务应用程序中所存储的公用元数据,那么管理员可以将这个服务器场中的“企业全局元数据”服务应用程序,发布给企业中所有SharePoint 2010服务器场使用。下图显示了在SharePoint 2010管理中心发布一个服务应用程序时的界面。
SharePoint 2010已经包含了一组内置的服务应用程序,它们为SharePoint 2010网站提供了诸多后端服务,是组成SharePoint 2010的重要组成部分。下面的表格列出了主要的SharePoint 2010内置服务应用程序,以及它们的简要说明。
服务应用程序 | 描述 | 是否存储数据 | 是否可发布 | SharePoint Foundation 2010 | SharePoint Server 2010 标准版 | SharePoint Server 2010 企业版 |
Access Services | 在浏览器中查看与编辑Microsoft Access 2010数据库。 | 仅缓存数据 | 否 | 不包含 | 不包含 | 包含 |
业务数据连接 | 访问和修改后端业务系统的数据。 | 使用数据库存储 | 是 | 包含 | 包含 | 包含 |
Excel Services | 在浏览器中查看Excel文件。 | 仅缓存数据 | 否 | 不包含 | 不包含 | 包含 |
Managed Metadata Service | 提供了对企业级托管元数据的存储和管理,同时可以在网站集之间共享内容类型。 | 使用数据库存储 | 是 | 不包含 | 包含 | 包含 |
PerformancePoint | 提供了PerformancePoint Services所包含的BI报表功能。 | 仅缓存数据 | 否 | 不包含 | 不包含 | 包含 |
PowerPoint | 在浏览器中查看、编辑和广播PowerPoint幻灯片。 | 仅缓存数据 | 否 | 不包含 | 不包含 | 包含 |
搜索 | 提供了SharePoint 2010的企业级搜索功能。 | 使用数据库存储 | 是 | 不包含 | 包含 | 包含 |
安全存储服务 | 用来存储访问其他应用系统的用户凭证信息,这些凭证信息可用于SSO单点登录场景。 | 使用数据库存储 | 是 | 不包含 | 包含 | 包含 |
状态服务 | 暂时存储用户的会话(Session)数据。 | 使用数据库存储 | 否 | 不包含 | 包含 | 包含 |
使用率和运行状况数据集 | 收集用户使用率和运行状况数据,提供相关的数据报表。 | 使用数据库存储 | 否 | 包含 | 包含 | 包含 |
User Profile | 为“我的网站”、配置文件页面、社会化标签和其他社会化功能提供支持。 | 使用数据库存储 | 是 | 不包含 | 包含 | 包含 |
Visio Graphics Service | 在浏览器中查看Microsoft Visio图形。 | 仅缓存数据 | 否 | 不包含 |
不包含 | 包含 |
Web分析 | 提供Web Service接口。 | 不存储 | 是 | 不包含 | 不包含 | 不包含 |
Word Automation Services | 进行批量自动化文档转换操作。 | 仅缓存数据 | 否 | 不包含 | 不包含 | 包含 |
在上个版本的SharePoint中,只有Office SharePoint Server 2007才具有共享服务提供程序架构,而Windows SharePoint Services 3.0是没有使用共享服务提供程序架构的。但是对于SharePoint 2010,无论是SharePoint Foundation 2010,还是SharePoint Server 2010,都使用了统一的服务应用程序架构。但SharePoint Foundation 2010、SharePoint Server 2010标准版和SharePoint Server 2010企业版所内置的服务应用程序数量是不同的。
除了上面的表格所列出的服务应用程序之外,在为SharePoint 2010系统安装了额外的Office Web Applications和Project Server组件时,它们都会向服务器场中注册更多的服务应用程序。
从上面对SharePoint 2010服务应用程序架构的讨论中,我们可以了解到,服务应用程序架构比上个版本的共享服务提供程序提供了更好的灵活性,并构建起一个强大的后端服务架构。通过服务与服务应用程序,SharePoint 2010将前端的网站与后端的服务有效的进行了分离。
最后需要提醒的是,并非所有SharePoint 2010服务都是基于服务应用程序架构来构建。例如, “Microsoft SharePoint Foundation 沙盒代码服务”服务就并非基于服务应用程序架构,实际上,它使用了一个名为“SPUserCodeV4”的Windows服务来实现自己的功能。