前言
不知不覺作為一個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作為一個產品,他里面很多的設計思想及其理念,是很值得我們學習的。
未完待續