我们可以用SharePoint做什么
前言
不知不觉作为一个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做什么的更多相关文章
- [转载]我们可以用SharePoint做什么
前言 不知不觉作为一个SharePoint的开发人员若干年了,从SharePoint API开始学习,到了解SharePoint的结构,逐渐一点点了解sharepoint的体系:从SharePoint ...
- SharePoint 2013 通过JavaScript实现列表标题列宽度可拖动
前言 最近有个新需求,用户希望标题栏可以拖动宽度,其实觉得没什么用,既然用户要了又推不掉,就勉为其难实现一下吧. 其实原理比较简单,就是利用JavaScript对标题栏进行宽度控制,然后从网上搜了一下 ...
- 无废话SharePoint入门教程一[SharePoint概述]
一.前言 听说SharePoint也有一段时间了,可一直处在门外.最近被调到SharePoint实施项目小组,就随着工作一起学习了一下实施与开发.但苦于网上SharePoint入门的东西实在太少,导致 ...
- 与中国最顶尖sharepoint工程师共舞
最近又跳了,来到某家外企.自以为善能称心如意,谁知乃井里之蛙. 给我的最大感触是,做sharepoint一定要做过非常大型的部署开发,没有经过这种淬炼,天天闷声研究,做一些页面功能,对技术提升毫无帮助 ...
- SharePoint 门户网站的图片轮播-页面定制
这个想法是自己突然的一个想法,想想我们经常用SharePoint做门户网站,不知道你们多数项目都是怎么完成的,我们客户要求的效果都还是很严格的,所有展现起来,还是很漂亮的,但是很多时候的效果,还是难以 ...
- [转]无废话SharePoint入门教程一[SharePoint概述]
本文转自:http://www.cnblogs.com/iamlilinfeng/p/3026332.html 一.前言 听说SharePoint也有一段时间了,可一直处在门外.最近被调到ShareP ...
- BEGINNING SHAREPOINT® 2013 DEVELOPMENT 第1章节--SharePoint 2013 介绍 处理开发者需求
BEGINNING SHAREPOINT® 2013 DEVELOPMENT 第1章节--SharePoint 2013 介绍 处理开发者需求 SharePoint本质上是一个平台.你 ...
- Windows 商店应用中使用 Office 365 API Tools
本篇我们介绍一个API 工具,用于在 Windows Store App 中使用 Office 365 API. 首先来说一下本文的背景: 使用 SharePoint 做过开发的同学们应该都知道,Sh ...
- Microsoft Graph API -----起题 Graph API
最近因为工作需要,接触学习使用了Microsoft Graph API.在看完Microsoft的Graph官方文档之后,也做了一些简单的案例,在Stack Overflow上做过一些回答.整体来说, ...
随机推荐
- HowTo Perform the spatial selection 'Share a line segment with' using ArcObjects
HowTo Perform the spatial selection 'Share a line segment with' using ArcObjects Article ID: 26528 ...
- python sort和sorted的区别以及使用方法
iteralbe指的是能够一次返回它的一个成员的对象.iterable主要包括3类: 第一类是所有的序列类型,比如list(列表).str(字符串).tuple(元组). 第二类是一些非序列类型,比如 ...
- PHP基本问题
WampServer修改端口及菜单Localhost http://www.wuwenhui.cn/3047.html WAMPServer默认配置更改-web根目录 http://blog.csdn ...
- 性能改善之For与Foreach
关于For与Foreach的区别,博客园里已经有好多这样文章了,都分析的挺好:http://www.cnblogs.com/jobs/archive/2004/07/17/25218.aspx 不过 ...
- SVM1 线性SVM
一.Linear Support Vector Machine 接下来的讨论假设数据都是线性可分的. 1.1 SVM的引入:增大对测量误差的容忍度 假设有训练数据和分类曲线如下图所示: 很明显,三个分 ...
- HQL
以下内容全部摘自韩顺平老师Hibernate笔记 * uniqueResult方法 如果我们检索一个对象,明确知道最多只有一个对象,则建议使用该方法: 具体用法如下: Student s=(Stude ...
- spring结合Quartz的集群功能实现
一:前沿 在上一篇(http://www.cnblogs.com/wuhao1991/p/4331613.html)的博客中记载了定时的功能,但是集成是没有成功的,在这篇中,我在解释下这里的”集成的含 ...
- 第1章 C#类型基础
1.1值类型和引用类型 1.1.1 值类型 使用值类型之前需要对值类型的所有元素初始化(普通值类型和结构体). 结构还有一个特性:调用结构上的方法前,需要对其所有的字段进行赋值,为了避免对结构体中所有 ...
- Highcharts 的实际实践一
题记: 原先是想用chart.js 这个轻量级来完成我的需求的,结果基于我的数据不规则,所以实现不了. 我的需求: XX后台系统会产生有些报警日志. 我负责把这些数据按照图标的方式来展示. 这写报警日 ...
- SAP 如何查看用户登录信息
1.首先进入事务代码 SM19 配置审计参数文件 2.选择客户端,用户名,并且勾选过滤激活之后点击细节配置,进入如下界面: 配置完成之后,点击保存. 3.并且可以进入SM20界面,选择要查看的客户端 ...