關于開源軟件,你所不知道的那些事情

責任編輯:editor004

作者:謝麗

2017-09-04 11:17:32

摘自:INFOQ

這種方式的優(yōu)點包括即插即用、零運維、可以獲得大部分需求等;缺點則包括可能被供應商鎖定、可能會存在集成問題等。一個托管在共享環(huán)境中,有廉價的非獨占性“模板”設計,幾乎不需要持續(xù)運維的開源軟件是與之最相配的。

人們通常認為,“開源軟件是完全免費的”,“開源軟件比閉源軟件更靈活”,“代碼所有權對于每家企業(yè)而言都非常重要”。但近日,SaaS CMS解決方案Coredna創(chuàng)始人Sam Saltis在一篇文章中指出,這些觀點并不是絕對正確的,它們要依賴于一定的“環(huán)境”,比如,應用場景、應用行業(yè)、企業(yè)規(guī)模,等等。

通常,人們有三種方式獲得技術軟件,包括“購買”、“構建”和“借用”。Saltis指出,企業(yè)在做出選擇之前,必須弄清楚他們要使用軟件解決什么問題,要綜合考慮戰(zhàn)略目標、外部合作伙伴和所需的系統(tǒng)支持等因素。這可以幫助他們了解什么方式最能滿足他們的需要。Saltis比較了上述三種方式:

“購買”技術是指購買滿足需求的軟件。這種方式有許多優(yōu)點,比如,購買的商業(yè)軟件可以快速部署,可以便捷地集成第三方軟件,可以進行一定程度的定制,等等。但缺點是,你可能需要為不需要的功能花錢,需要不斷花錢購買運維和升級服務等。“構建”技術的好處是:開發(fā)人員可以嚴格根據(jù)需求構建軟件,縮減開支;開發(fā)人員可以更好地控制軟件,提供更易用的接口;沒有許可證問題。這種方式的缺點是:團隊成員可能缺少從頭構建所需軟件的知識和技能;最終構建出的軟件可能存在許多Bug,為了節(jié)省時間,需要外部顧問幫助解決;整個構建過程非常耗時;很難跟上技術發(fā)展的步伐。“借用”技術是指按需購買,按使用付費。這種方式的優(yōu)點包括即插即用、零運維、可以獲得大部分需求等;缺點則包括可能被供應商鎖定、可能會存在集成問題等。

如上所屬,在作出選擇之前,應該弄清楚技術的應用“環(huán)境”。Saltis建議從可用的IT資源、需求復雜度、業(yè)務重要性、預算等四個方面來考慮,并提出了如下選擇矩陣:

根據(jù)Saltis的經(jīng)驗,這個矩陣即使不能代表所有的情況,也可以代表98%的情況。紅色區(qū)域代表大多數(shù)小型組織。他們的需求復雜度較低,IT資源較少,網(wǎng)站對于他們而言并不是特別重要,每個部門都需要預算。黃色區(qū)域代表大多數(shù)中型組織。他們需求復雜度有所增加,有IT資源,但不足以開發(fā)、維護一個網(wǎng)站及其基礎設施,網(wǎng)站已經(jīng)成為企業(yè)營銷和定位策略的一個重要部分,數(shù)字營銷預算增加,但對企業(yè)的重要程度還不足以讓企業(yè)雇傭專門的內部資源。綠色區(qū)域代表大多數(shù)大型組織。他們的需求復雜度很高,IT資源豐富。雖然外包和云計算在很大程度上削弱了IT資源,但真正了解數(shù)字化重要性的組織通常會有專門的團隊開發(fā)和維護自己的數(shù)字資源。數(shù)字營銷成為關鍵業(yè)務已經(jīng)有段時間了。他們有合理的預算。Saltis用下面這張圖對上述內容進行了概括:

  在此基礎上,他得出了如下結論:

他認為,小型企業(yè)適合采用開源軟件。一個托管在共享環(huán)境中,有廉價的非獨占性“模板”設計,幾乎不需要持續(xù)運維的開源軟件是與之最相配的。當然,如果存在以下情況,小型企業(yè)也可以采用閉源軟件:

需求有限,像Squarespace這樣的SaaS即可滿足需求;企業(yè)是電商企業(yè),則可以使用Magento;網(wǎng)站需要獲取用戶個人數(shù)據(jù),但預算不允許其部署和管理適當?shù)陌踩胧?;有特殊的行業(yè)需求,需要定制開發(fā)。

對于中型企業(yè)而言,閉源解決方案,尤其是SaaS更適合他們,因為:

在開源環(huán)境里,功能需求增加需要安裝許多第三方插件或完成大量的自定義代碼開發(fā);可用的IT資源不足以維護一個可靠的、高性能的網(wǎng)站;網(wǎng)站正常運行時間對于收入和名聲至關重要。閉源SaaS解決方案提供的基礎設施環(huán)境可以很好地應對網(wǎng)站流量波動。

不過,在以下情況下,開源技術對于中型企業(yè)而言也是不錯的選擇:

企業(yè)的IT資源/技術技能讓他們可以自行維護應用程序,運營環(huán)境以及7x24小時監(jiān)控網(wǎng)站的性能;企業(yè)有預算付給提供商,讓他們監(jiān)控和維護網(wǎng)站;企業(yè)以離線業(yè)務為主,數(shù)字營銷需求并沒有隨企業(yè)規(guī)模同步增長。

至于大型企業(yè),Saltis認為,上述方案哪一種都可以,那取決于企業(yè)的結構和關注點。另外,他特別指出,每一種規(guī)則都有例外。

基于上述分析,Saltis反駁了開源領域一些廣為流傳的觀點。第一個是“開源是免費的”。Saltis指出,使用開源軟件有許多隱藏成本,包括定制成本、升級成本、托管成本以及平臺遷移成本。比如,從OpenCart遷移到Magento需要10到15個小時。第二個是“有力的支持”。Saltis認為,雖然會有一個很棒的社區(qū)為你提供幫助,但一旦你對平臺進行了定制,就增加了社區(qū)提供幫助的難度。第三個是“大量的插件”。的確如此,WordPress插件有超過4萬個,但問題是,有多少是你需要的呢?

還有一些東西是銷售開源平臺的公司不愿意告訴你的。

開源平臺的安全性——根據(jù)李納斯法則,開源軟件更安全,但是,開源并不意味著它經(jīng)過了全面徹底的審查,代碼可能因為測試不充分而存在錯誤;開源平臺的持續(xù)更新——平臺會定期升級和更新,但是,你所使用的插件與平臺的最新版本未必兼容;開源平臺的技術支持——如果你根據(jù)自己的需求對開源平臺進行了定制化開發(fā),那么它就成了一個客制化版本,不再是開源的了;開源平臺的遷移——遺留開源軟件通常會有一個最后期限,當開發(fā)社區(qū)不再提供支持時,即使舊版本的軟件仍然滿足你的需求,你也不得不花費時間和精力升級到新技術。

因此,在Saltis看來,在選擇開源平臺和閉源平臺之前,要抓住以下幾個關鍵因素:

這項技術是企業(yè)的一個重要的組成部分嗎?它會讓企業(yè)具備獨特的優(yōu)勢嗎?我們有技術資源/合作伙伴來構建和管理最終的解決方案嗎?我們需要重新創(chuàng)建可能已經(jīng)構建好拿來就可以用的東西嗎?我希望將預算花在構建或購買某個東西來滿足需求嗎?

鏈接已復制,快去分享吧

企業(yè)網(wǎng)版權所有?2010-2024 京ICP備09108050號-6京公網(wǎng)安備 11010502049343號