1.2 SharePoint技术架构
SharePoint是一个非常复杂的分布式系统,下面从不同的角度介绍一下SharePoint的技术构架。
1.2.1 平台堆栈
从纯技术角度讲,SharePoint就是一个网站,这个网站构架于ASP.NET和.NET Framework之上,使用IIS作为Web服务器,使用SQL Server作为后台存储介质。
SharePoint构建在以下技术之上,如图1-7所示。
图1-7 SharePoint 2013平台堆栈
1.2.2 物理拓扑架构
SharePoint可以分布式部署,一个SharePoint服务器场可以包含少至1台,多至几百台服务器。从逻辑上看,SharePoint场分为3层,每一层可以有多个服务器,企业可以根据自己的业务需要,设计合适的场结构,如图1-8所示。
图1-8 SharePoint三层架构
最下面是数据层,由SQL Server数据库组成,用来存储SharePoint的配置信息、内容和服务数据。
中间是服务应用程序层,运行SharePoint的服务应用程序,为SharePoint场提供一系列的后台服务,比如搜索、用户配置文件、Excel服务、业务数据连接服务等。这一层里面的服务器叫应用程序服务器。
最上层是Web应用程序层,运行SharePoint的Web服务,也是响应用户请求的一层。这一层叫Web前端(Web Front-End, 简称WFE)服务器。
应用程序服务器和Web前端服务器,说的都是运行了SharePoint的服务器,区别在于他们运行的服务。应用服务器运行服务应用程序,Web前端服务器运行Web应用程序服务。在小型的服务器场里,一个SharePoint服务器上可能同时运行服务应用程序和Web应用程序,因此这个时候一个服务器同时有两个角色。
1.2.3 存储结构
上面说到了,SharePoint使用SQL Server数据库存储数据,那么SharePoint都在什么地方用到了数据库呢?
1.配置数据库
SharePoint安装过程中,会创建出一个数据库,这个数据库存储场级别的设定,每个服务器场只有一个,叫做配置数据库,这个数据库的名字一般是SharePoint_Config,可以在配置服务器场的时候指定。
2.内容数据库
在介绍内容数据库之前,先介绍一下Web应用程序。一个Web应用程序对应到IIS里面的一个站点,后台连着一个或者多个数据库。为Web应用程序存储数据的数据库叫内容数据库。内容数据库里面存储网站的设置、文档、属性、列表项等,具体内容请查看下一节SharePoint逻辑结构。
SharePoint安装完毕之后,默认创建出一个管理中心的Web应用程序,供管理员管理和配置SharePoint场,并不给终端用户使用。管理中心的Web应用程序,后台对应一个内容数据库,以SharePoint_AdminContent_GUID的形式命名。
在管理中心里面可以创建Web应用程序,在创建的时候会默认创建出一个内容数据库,之后还可以添加多个。
3.服务应用程序数据库
在创建服务应用程序的时候,同样需要数据库来存储数据,这种数据库叫服务应用程序数据库。根据需要,服务应用程序可以有多个数据库。
综上所述,SharePoint的存储结构如图1-9所示。
图1-9 SharePoint存储结构