面向對象的Web 服務器Zope (4)_Windows教程

      編輯Tag賺U幣
      教程Tag:暫無Tag,歡迎添加,賺取U幣!
      六、數據共享

      Zope 的強大功能之一就是它簡單而成熟的數據共享模型,這個模型叫做“獲取”,核心的概念可以簡單的描述為:

      Zope 對象包含于其它對象中(例如,文件夾)

      對象能夠“獲取”容器中的屬性,內容,行為。

        以前,我們決定把我們網站的頭和腳封裝到分離的 DTML 文檔,這樣能包含其他網站的內容,但是這個設計在拷貝頭和腳到網站內所有的文件夾時發生了問題。如果我們采取“獲取”的辦法,在網站的頂層文件夾建立頭和腳,下層的 DTML 就能自動“獲取”。

        這個概念對所有的對象都適用,對把常用的資源集中起來十分有用。例如,對一個經常用到的 SQL 查詢語句,我們可以把它定義在一個文件夾里,子文件夾里的對象能自動通過“獲取”來使用它,如果要改變查詢語句,只需要改動一個地方就可以了。

        因為對象從當前層開始“獲取”,然后向上搜索,因此很容易建立自己的文檔。
      例如,我們有一個叫做“Sports”的文件夾,內容全部是關于運動的,你可以在這個文件夾里建立自己的頭和腳,當前目錄及其子目錄下面的文檔就會使用這兩個文檔而不是采用頂層的那個了。

        對“獲取”的使用方法可以寫好幾篇這樣的文章,我們首先需要了解的就是它提供了一個簡單但是強大的方法來避免數據冗余而增加網站的維護成本。

      七、安全授權

        一個成功的網站需要組織起一個團隊來合作:應用開發人員,SQL 專家,內容管理員以及應用的最終用戶。在傳統的網站里,維護和安全會很快出現矛盾。對權限的分配會變得十分復雜。

        Zope 在這個問題上采用了數據和表示的清晰分離以及靈活的安全模型。采用“用戶文件夾”來管理用戶,里面包含用戶信息。Zope 提供了要比普通文件系統要豐富得多的權限。

        除了使用Web 來管理強大的封裝和安全特色以外,Zope 還提供其他協議的合作開發特色,包括 FTP, WebDAV 和 XML-RPC。版本管理,能讓其他用戶看到最新的版本更新,但不是發布出去,如果版本的修改結束后,用戶就可以“提交”版本,把最新版本的網站發布出去。

      八、XML 支持

        當前應用服務器市場的熱門話題就是 XML 支持。Zope 除了內置的對基于 XML的協議 WebDAV 和 XML-RPC的支持外,Zope 的開發人員還可以利用一個快速的基于 C 的 XML 分析器,Zope 對象數據庫能導出為 XML 格式。利用一個“XML 文檔”的附加原型,可以把 XML 文檔上傳到 Zope,Zope 會自動分析文檔及其元素,并儲存為單獨的 Zope 對象。

        和 XML 相關的是,Zope 包含了對DOM(Document Object Model) API的支持。開發人員可以在 DTML 或者 Python 代碼中使用熟悉的 DOM 調用來操作 Zope 對象。將來對 XML 的支持還會包含 XSL 處理以及用 XQL(XML Query Language) 對 Zope 對象搜索。

      九、結束的話

        Zope 是高度可擴充的,高級用戶可以建立自己的對象類型,或者采用 Python 寫新的 Zope 附加模塊。Zope 社區已經有很多這類的附加產品。更多的產品信息可以參考 Zope 的網站:www.zope.org。

        國內的 www.FreeLAMP.com 網站是一家采用 Zope + SquishDot 架構的開放源碼新聞網站,著力于網站安全和 LAMP(Linux + Apache + MySQL + PHP/Perl/Python) 的架構。

      來源:網絡搜集//所屬分類:Windows教程/更新時間:2013-04-15
      相關Windows教程