登入  |  English
感謝您對「自由軟體鑄造場」的支持與愛護,十多年來「自由軟體鑄造場」受中央研究院支持,並在資訊科學研究所以及資訊科技創新研究中心執行,現已完成階段性的任務。 原網站預計持續維運至 2021年底,網站內容基本上不會再更動。本網站由 Denny Huang 備份封存。
也紀念我們永遠的朋友 李士傑先生(Shih-Chieh Ilya Li)。
源碼專案 5 個使用 Drupal 作為架站平台的好理由!

5 個使用 Drupal 作為架站平台的好理由!

對建置網站的朋友們,Drupal 或許是有點熟悉,又有點陌生的開放原始碼內容管理系統平台 (Content Management System)。雖然 Drupal 得獎無數,雖然 Drupal 在全球數一數二,雖然 Drupal 有超過 7000 個開發者參與其中,但就因為這種又近又遠的關係,往往各方都說好用的東西,到了手上卻又覺得不大順手,找不到這個 CMS 真正好用的理由。

今天就來以一個使用 Drupal 建置網站超過 5 年的開發者,跟各位分享 Drupal 這個 CMS 有什麼特別好用的地方,未來值得你作為公司主要的產品發展方向,甚至值得你一窺 Open Source 社群從事的各類活動。

1. Drupal 的社群既深且強


Drupal 模組很多,但仍沒有比 Wordpress 或是 Joomla 的模組數來的多,Drupal 使用者眾多,但卻沒有其他兩者多,但我個人認為,Open Source 的整體精神,比起使用量,更重要的是社群核心支持者的凝聚力和協同合作的力量。Drupal 社群有一種類似 Linux 原生社群的特質,有非常好的內聚力和包容力。社群的開發者之間充滿了公開交流的氣氛,分享出來的模組並不是單一開發者或單一公司的產物,往往是經過社群各種參與者不斷調整,彼此互相協調之後的成果,並且會隨著時間自然演進、接班、交替。

Drupal 的模組跟模組之間共生共榮,開發者跟開發者之間彼此交流熱絡,協同運作。可想而知,這也是為何每年 DrupalCon 這個世界盛會會有超過 3000 名參加者從世界各地專程前往參與,一同討論 Drupal 最新功能與最新訊息,其實,這些來源皆是因此特殊的文化習性而產生。


2. Drupal 功能無比彈性


Drupal 可以輕易地把各式各樣的內容放在同一個網站,討論區、Blog 和影音中心,甚至是會員機制、小群組機制的整合頁面,對了解 Drupal 的人都只是家常便飯。

但這些僅僅是功能的達成,真正厲害的地方並不在此,而是 Drupal 面對各種內容的核心概念。這樣把內容視為整體的核心概念,創造了 Drupal 無比彈性、歷久不衰的主因。

舉例來說,你曾經面臨過,討論區裡頭的人想要另外加入購物功能,卻沒辦法輕易達到的問題,需要 Hack 模組,大改一翻才能達成嗎?對於大多數的 Open Source CMS 平台來說,各功能間的發展,可能來自於不同的支持廠商、個人開發者,彼此技術知識並無互通,而少有 CMS 的核心,能夠扮演好模組和模組之間「接合的橋樑」。這也使得往往第三方支援的軟體孤軍奮戰作戰,想要 A 開發者的功能,又要 B 開發者的功能,就得慢慢等待少數開發者的支援或自己 Hack。

以 Drupal 打造的網站並無此困擾。熟悉 Drupal 的朋友,可以輕易製作一個商品頁面,囊括討論區的整合、地圖、影音、商品規格資料,甚至讓使用者互動的推噓功能,和社群平台 Facebook 整合,都可在彈指之間達成。

這種彈性,讓網站經營團隊免除了許多後顧之憂,網站經營者常常面臨到隨著業務發展,剛開始和半年後所需的功能不一,卻因為架構問題導致系統開發出現瓶頸,甚至原來使用的第三方延伸套件的開發廠商不再支援。Drupal 的彈性和內聚力將這種問題最小化,經營者只要有 Drupaller 協助,即可放心規劃與經營網站,不用擔心今年僅規劃商品資訊,在明年就無法加入購物車的功能了。

Drupal 的彈性若是搭配自定欄位的強大模組「CCK」,定義各種資料蒐集的欄位也輕鬆簡單,舉含活動報名資料填寫,到影音相簿、地理資訊的蒐集平台,理解 Drupal 彈性概念的朋友,立刻可從既有工具組出蒐集資料的表單。

不過,資料蒐集、資料結構僅是整個彈性網站的一環,還須搭配網頁呈現端的彈性配置。Drupal 的使用者不能不熟悉 Views 這個超級 SQL 產生器,有了 Views 才可以快速設定出表格、清單、Blog、相簿、圖表、新聞等各種形式的內容呈現頁面或區域。再搭配 Panel 這個頁面區域配置模組,做網站就像拼圖一樣簡單,一塊一塊擺到想要的位置。這些就是 Drupal 的彈性來源。

3. Drupal 與 Web 趨勢結合


很少有 CMS 能夠不斷往新的技術邁進,甚至成為引領技術的潮流,Drupal 的核心在每一個版本的演替,都隨著 Web 的潮流不斷行進。核心的演替,會有拉著第三方模組一起成長的力量。

舉例而言,Drupal 4 演進到 Drupal 5 時,做了個重大的決定,內建嵌入 Jquery 為官方支持的 Javascript Library。在 2006 年那個 Javascript Library 百家爭鳴的時代,Jquery 還只是 1.0 的階段,Drupal 就能夠精準的選擇重要的技術整併,凝聚開發者在 Jquery 力量。

而近期 Drupal 6 到 Drupal 7 的演替,又支持了 RDF 這個熱門的網路資料交換格式。可以想像,如果有百萬個支持 RDF 格式的網站,是否意味 RDF 格式交換資料的時代更有機會來臨?Drupal 便是努力扮演這種與 Web 發展趨勢結合的角色,不遺餘力。

核心的積極,表示也能夠聚集新穎技術的開發者一同共襄盛舉,舉凡各種大型網站應用,如 Memcache、Cassandra 資料庫等等的支持模組相繼出現,而近兩年熱門的 Mobile 支援,Drupal 也出現了將資料結構完整 JSON 化的 API 橋樑。

跟著 Drupal一同成長,就表示你與Web的技術不會脫節,不會落伍。

4. 高效能及可擴展性

有建置過中大型網站(月流量 1000 萬 pv 以上)的朋友,大概能夠想像一個兼具彈性、全功能,又維持極佳程式碼架構的系統,要撐起如此流量一定得有兩把刷子。自行用 Framework 開發,嚴肅的要求每一支程式碼記憶體用量、盡善盡美通常是大流量網站不錯的解決方案,但我相信身為與眾不同的工程師,各位看倌們你們的勞力值得有更好的工具,推薦擴展性強大的 Drupal 給你認識。

Drupal 的優秀案例不少,如 Economist.com(經濟學人雜誌)這個世界舉足輕重的媒體、如 Ubuntu.com 這個著名的 Open Source 作業系統官網,或是 Mtv.co.uk 等等,都是品牌、品質非常好的網站系統。觀看這些案例,並不是想看他精美的設計、多樣的功能,而是這些案例都代表 Drupal 在大流量網站中表現有多麼出色,通過了層層決策關卡,實際而廣泛的應用在商業領域中。舉例而言,經濟學人雜誌,就包含超過 300 萬註冊會員,3000 萬月瀏覽頁,每分鐘有留言和文章不斷出現的高流量。這個案例在在顯示出,Drupal 在擴展力和負載量有多高,不至於發展到一個階段,就面臨架構問題而必須打掉重來。

能夠應付這樣高流量的網站,其實因為 Drupal 本身具備良好的擴展性 (Scalibility)。從 Web 端支援多台網頁伺服器服務,到 Database 端支援多個資料庫 Master-Slave 的主從架構服務,達到基本伺服器的可擴展性,讓網站不受伺服器資源的限制,可分散服務資源到各伺服器中。除此之外,優秀的快取也支援暫存記憶體、靜態 HTML 網頁快取等等,以減少動態網頁消耗 CPU。最後,別忘了搭配 CDN (Content Delivery Network) 的架構支持,一個完整的大流量網站架構就此而生。

更進一步的利用,Drupal 還有多站系統支援,無論是 multi-site to multi-databse,還是 multi-site to 1 databse,都是 Drupal 核心支援的架構,讓你的服務在發展的途中,只需要少許的技術人員支持,幾乎可以不用擔心擴展性問題。這對一個經營者而言,不是天大的好消息嗎?

5. DrupalTaiwan.org 永續經營 ( https://drupaltaiwan.org )

經歷過 Open Source 社群起伏的朋友或許會知道,開放原始碼最怕力量分散,各奔東西,不相回饋,不聞不問。很幸運的,Drupal 在台灣的發展並沒有遇到這種情境。Drupal 台灣社群,從 2006 年至今超過 5 年的時間,進行了為數不少的支持行動,就我所認識參與 Drupal 社群的 Drupaller,大多無私奉獻,不求回饋,彼此互相成長。這些成果在哪裡?舉凡 Drupaltaiwan.org 的討論園地,或是 Drupal 現在的正體中文翻譯,到每月一次的小聚,都顯示 Drupal 在台灣已經有成熟的興趣社群、商業社群、Open Source 社群。

或許有人會問,一個在地社群會有多重要呢?資訊不是看國外的就好了嗎?永續經營跟我又有何關係?試想,今天你玩的系統沒人懂而只有你會,那市場怎麼會接受你「個人」的喜好呢?市場當然會朝向大家討論度較高的軟體,如果每個人都這麼想,就不會有現在的 Drupal 台灣,也不會有現在的 Drupal.org,我們也不會有好用的,同時也是大家一同貢獻心力而成的 Open Source 軟體。

Drupal 台灣發展至今,成功的讓少少 10 個在台灣的小玩具,發展成每年一次,超過 200 人的正式聚會、技術交流和產品發展討論。我們最喜歡為大家創造各種機會,交換心得、交換名片、交換勞力!唯有一起來創造開發的機會,Drupal 才能更加茁壯,而我們也期許自己能永續經營。

歡迎您立即加入 Drupaller 的行列,並且共同參與 7/9 舉辦的 DrupalCamp Taipei 2011,找到志同道合的朋友一起創造機會!

◎ DrupalCamp Taipei 2011 報名網址:https://registrano.com/events/drupalcamp-2011

作者簡介

Jimmy,Drupal Taiwan 創辦者、Android 中文資源站創辦者,曾任癮科技技術總監,現為社會企業 NETivism 的共同創辦人。對於串起非營利單位、開放原始碼以達到數位社會公益等冷門雜工為畢生志趣。 個人部落格:https://jimmyhub.net




自由軟體鑄造場電子報 : 第 174 期 CallGraphviz—依據 cscope、Graphviz 以及 xdot 實作的 call graph visualizer

分類: 源碼專案



評論 

 
0 #1 sp42 2011-06-14 13:49
不錯~學習了
 
 
0 #2 凍仁翔 2012-11-21 11:25
一年後在下也接觸到這套 CMS 了,雖然還不到駕馭的地步,但他 俱備的彈性是在下所想要的,使用 上也真的像在 Linux 上也是透過各種指令串接起來,真 的是太棒了!