前面我们看了一下Sharepoint服务器对象模型的物理对象层次(Physical Objects Hierarchy)和对象内容层次(Content Hierarchy)中的相关类,这里来看看服务层次结构,其中包括表示 Web 服务(WebService)、Windows 服务(WindowService)、其他类型的服务(IcomingEmailService, UsageService,OutBoundMailService)、服务实例以及的服务的已配置场范围实例(CFCI)。

   服务层次结构相关类图:

 Sharepoint学习笔记 –架构系列—Sharepoint的服务器端对象模型(Server Object Model) 3.服务层次结构 

 

SPService类

   SharePoint Foundation 服务由一个从 SPService 继承的类表示。

   对象模型中已经有几个这样的类,您可以从 SPService 及它的一些派生类中派生新类。 这些类提供了相关成员支持你获取它们当前所执行的服务。

   服务继承树(实心边框表示密封类)如下图:

        Sharepoint学习笔记 –架构系列—Sharepoint的服务器端对象模型(Server Object Model) 3.服务层次结构

     除了从 SPPersistedObject 继承的内容外,SPService 还提供成员,以获取有关服务正在执行的作业(Job)的信息。每个派生类型都提供与其特定的类型相关的附加功能。

 

SPServiceApplication类

    如果某个服务符合Sharepoint的服务应用程序框架(Service Application Framework)规范,则 SPService 对象具有 Applications 属性来存放所有在服务器场中运行的服务的 CFSI(已配置场范围实例化)。

    服务的 CFSI 由一个从 SPServiceApplication 类继承的类的对象表示。对象模型中已经有一些从 SPServiceApplication 派生的类,并且您可以从SPServiceApplication 及其派生类中派生新的类。

    CFSI 继承树(实心边框表示密封类)如下:

         Sharepoint学习笔记 –架构系列—Sharepoint的服务器端对象模型(Server Object Model) 3.服务层次结构

 

    除了它从 SPPersistedUpgradableObject 继承的内容外,它的成员主要存放有关对 CFSI 进行设置和访问的权限的设置。

SPServiceInstance属性

     每个 SPService 对象都有一个 Instances 属性,该属性存储服务器场中的各台服务器上运行的所有服务实例。

     这些承载特定 CFSI 的实例保存在表示 CFSI 的 SPServiceApplication 对象的 ServiceInstances 属性中。在任意一台服务器上运行的每个 CFSI 的实例不超过一个,但是给定的服务可有多个 CFSI 并且它们可以在相同的服务器上运行。

     另外,给定的 CFSI(以及给定的服务)可在多个服务器上运行,在这种情况下,每个服务器均有自己实际的 CFSI 实例(一个正在运行的进程)。

     如果服务没有 CFSI,则它在运行的每台服务器上仍有实例,但是在给定的服务器上此服务的实例不能超过一个。

     每个实际的实例均可以看作既是服务的实例,又是服务的一个 CFSI 的实例(如果有任何 CFSI)。

     每个实例由从 SPServiceInstance 派生的类的一个对象表示。

     SPServiceInstance 的继承树几乎与 SPService 的树完全平行。

     服务实例继承树(实心边框表示密封类)如下图:

          Sharepoint学习笔记 –架构系列—Sharepoint的服务器端对象模型(Server Object Model) 3.服务层次结构

      除了从 SPPersistedObject 继承的内容外,SPServiceInstance 还提供成员以启动和停止服务器上的服务。每个派生类型都提供与其特定的类型相关的附加功能。

 

SPLoadBalancerServiceInstance 类

    SPLoadBalancerServiceInstance 类不 由服务器场的负载平衡软件或硬件使用,它也不表示 Application Discovery and Load Balancer Service的实例。

    它是一个基类,开发人员可以将它与 SPWindowsService 一起使用,从而开发负载平衡的文档转换服务,例如使最终用户能够以 HTML 格式查看 PDF 文档的服务。

    下图显示 SharePoint Foundation 的服务应用程序框架的主要基类之间的关系。

    实心箭头从一个父类指向父类的属性集中保存的子类类型。

    虚线箭头指示 SPServiceInstance 类表示一个正在服务器上运行的进程,此进程在某种意义上"实例化"了由 SPService 类表示的服务器场范围的服务。

Sharepoint学习笔记 –架构系列—Sharepoint的服务器端对象模型(Server Object Model) 3.服务层次结构

 

   下面列举的对象保存在配置数据库中,因为它们都继承自SPPersistedObject类:

  • SPService
  • SPServiceApplication
  • SPServiceInstance
  • SPServiceProxy
  • SPServiceApplicationProxy

相关文章:

  • 2021-06-28
  • 2022-02-18
  • 2021-10-22
  • 2021-05-31
  • 2021-04-07
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-12-01
  • 2022-01-06
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案