前言
不知不觉作为一个SharePoint的开发人员若干年了,从SharePoint
API开始学习,到了解SharePoint的结构,逐渐一点点了解sharepoint的体系;从SharePoint
的2007到2010到2013到SharePoint
Online都接触了一些。本文会从个人的视角给大家展现一下我了解的sharepoint的体系结构,以及介绍一下sharepoint的相关功能,欢迎大家共同讨论拍砖。
SharePoint平台的体系结构
基本平台:
ASP.NET
SharePoint平台归根结底是一个ASP.NET程序,因此大家在开发ASP.NET用到的技术SharePoint中都会相应的体现。Master
Page, WebPart, WebService , IIS
这些基本的概念大家都耳熟能详了,这些技术在SharePoint中的各处都能体现出来,一些基于ASP.NET的设计思想在SharPoint都能体现。
SQL
Server服务
SharePoint作为一个企业级的产品,就必须考虑到如何存储一个站点中相关的数据,随着数据的级别不断的增大,如果解决数据存储问题,如何解决数据的备份问题以及灾难恢复问题,因此SQL
Server顺势成为了SharePoint的数据存储后台。因此,使用SharePoint的企业,除了需要SharePoint管理员,还需要数据库管理员。随着数据级别的增加,数据库管理员会对SharePoint的效率起着越来越重要的作用。RBS,EBS等外部存储机制,在SharePoint
Online之前的版本也一度非常火。
Workflow
Services
工作流服务是一直在企业中很常用的,因此SharePoint作为一个门户网站集成了工作流服务,除了一些基本的审批工作流。SharePoint提供了SharePoint
Designer来让用户可以自定义复杂的工作流。SharePoint2013之前的工作流基本是基于事件机制的,SharePoint2013引入了Platform
Workflow,因此Workflow
Manager也作为一个SharePoint组件被引用。SharePoint工作流现作为一个SharePoint的基本模块已经非常成熟。
Search
Service
作为一个门户网站,用到搜索相关的技术是很平常不过的。因此SharePoint作为一个平台也不能缺少这样一个功能。Search
Service因此也作为SharePoint的基本服务提供,里面提供了一些基本的爬网,增量爬网,添加索引的的功能,及时只有内网,你仍然可以点几下就能实现搜索的功能。
核心服务
权限模型
提供了基本的角色-成员为基础的权限模型,并且提供了接口进行权限模型的扩展。关于权限认证方面,除了AD认证,可以自己配置CBA,NTLM,ADFS等其他认证方式,并且集成到SharePoint中,可以为相同的站点配置不同的认证方式,实现Extranet和Intranet的管理。
基本存储
主要分两类存储,一些基本的模板信息存储在文件系统中。用户保存的文件以及文件的属性信息,主要存储在数据库中。并且实现了文件的版本控制,以及API进行相关功能的备份,还原,扩展。
拓扑结构
服务级别的拓扑结构主要是基于Centeral Admin-Web Front
End,这种结构。这种结构主要实现了服务器级别的负载均衡,可以实现在不同的Server上处理不同的任务,但是整体又互相协助。
站点级别的拓扑结构主要基于站点集,不同的站点之间共享权限,也可以设置独立的权限。
API
SharePoint提供了强大的API来对SharePoint进行操作管理,这个功能也是SharePoint作为一个产品,区别于一个ASP.NET项目的最重要的一点。
API也催生了很多SharePoint下游的产品,如用API进行二次开发,用API对站点进行自动化管理。
应用层面:
协作
提供了Outlook中的类似日历的功能,并且和Outlook很好的集成在了一起。Online
offline的功能,和lync集成在一起。讨论版功能,投票功能,审批管理功能等,这些常见的小功能作为一些简单的Feature集成在了SharePoint中。
内容管理
相关的功能有很多,例如:发布功能,只有是发布状态的页面或者文档才对用户可见;审查功能,随时关注站点中的数据被谁更改过;多语言转换,可以实现同一页面不同的语言版本的转换;回收站及其数据滞留机制等等。任何开发人员或者终端用户对数据做的修改,管理员都可以进行追踪。
Portal
集成了MySite,社交论坛等常见的相关功能。类似于Like,Rate
这种功能,并且可以查找不同用户在社区的行为,以及用户的个人信息,公开或者隐私的信息。把社区功能完美同SharePoint,AD集成在了一起。
BI
商业智能。SharePoint中10开始集成了商业智能,通过Excel Service,Business Intelligence
Service,同时可以集成SharePoint,SQLServer,
Oracle,Office等各种常见的数据源,生成自己的报表,仪表板,报告。并且可以通过报表的形式随时监听数据的变化,因此把商业智能相关的功能也集成到了旗下,并且提供用户扩展。
从上面介绍的这些功能大家简单的了解SharePoint是如何实现了门户网站,文档管理,协作,社交等相关功能的无缝衔接。SharePoint基本实现了常见的站点的常见功能。由于微软一直在大力的支持,因此SharePoint对于大的企业的IT协作,一直是很好的选择。
虽然SharePoint作为一个不错的产品,但是SharePoint的使用在中国并不火,社区也很冷清。原因虽然有很多,个人觉得觉得主要原因还是水土不服:
Sharepoint生态系统授权过于昂贵,除了授权还需要二次开发,中国的人力成本较低因此对于IT集成的需求不高。但是SharePoint作为一个产品,他里面很多的设计思想及其理念,是很值得我们学习的。
博客转自:《我们可以用SharePoint做什么》