自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

企業(yè)擁抱開源之前,應(yīng)該了解的七件事

開源
本文試圖從企業(yè)軟件的歷史,結(jié)合開源軟件發(fā)展規(guī)律,介紹軟件開發(fā)和交付方式的演進(jìn)過程,分析常見的開源軟件開發(fā)和使用誤區(qū),討論開源軟件的業(yè)務(wù)模式和生態(tài),以及在云時代下,開源軟件和云的結(jié)合與相互促進(jìn)。

新的時代,開源的發(fā)展越來越蓬勃,開源和云的關(guān)系越來越復(fù)雜,耦合度越來越高,云是開源軟件允許的最佳環(huán)境之一,也為開源軟件插上安全高效的騰飛引擎。

1997年5月埃里克·雷蒙德(Eric S. Raymond)發(fā)表了被譽為“開源圣經(jīng)”的《大教堂與集市》,開源運動從此有了自己的獨立宣言。開源發(fā)展至今,從Linus Torvalds、Kenneth Lane Thompson、Richard Matthew Stallman、Eric Steven Raymond等個人英雄的出現(xiàn),到越來越多的企業(yè)組織意識到開源的價值,并加入到開源中,開放、平等、協(xié)作、共享的開源模式逐漸成為新一代軟件開發(fā)模式。開源已成為全球軟件技術(shù)和產(chǎn)業(yè)創(chuàng)新的主導(dǎo)力量之一,尤其到了云時代,開源覆蓋了軟件開發(fā)的全域場景。

本文試圖從企業(yè)軟件的歷史,結(jié)合開源軟件發(fā)展規(guī)律,介紹軟件開發(fā)和交付方式的演進(jìn)過程,分析常見的開源軟件開發(fā)和使用誤區(qū),討論開源軟件的業(yè)務(wù)模式和生態(tài),以及在云時代下,開源軟件和云的結(jié)合與相互促進(jìn)。

一、為什么開源難以回避

特征一:開源基礎(chǔ)軟件的應(yīng)用廣度與深度提升

基礎(chǔ)軟件是計算產(chǎn)業(yè)的“魂”。過去幾十年來,隨著開源的蓬勃發(fā)展,早期開源軟件集中在應(yīng)用側(cè),但是重要的基礎(chǔ)軟件,如操作系統(tǒng)、數(shù)據(jù)庫等,依舊采用封閉專有的開發(fā)模式和商業(yè)模式。

今天,基礎(chǔ)軟件也逐漸演變成開源、開放方式。97%的軟件開發(fā)者和99%的企業(yè)使用開源軟件,基礎(chǔ)軟件、工業(yè)軟件、新興平臺軟件采用開源成為彎道超車的重要動力。信通院《開源生態(tài)白皮書(2020年)》指出,近年來國內(nèi)企業(yè)逐漸側(cè)重基礎(chǔ)軟件領(lǐng)域開源項目布局,在操作系統(tǒng)、數(shù)據(jù)庫、中間件等領(lǐng)域涌現(xiàn)多個開源項目,其中不乏國際基金會的頂級開源項目。

特征二:開源軟件創(chuàng)造的價值凸顯

開源已成為全球數(shù)字科技創(chuàng)新的動力,成長為一種強(qiáng)大的技術(shù)創(chuàng)新模式,并從最初的軟件行業(yè)走向了硬件、芯片、視頻、IoT、AI等多個領(lǐng)域,開源的商業(yè)模式也在逐漸成熟。如今,新產(chǎn)品在開源,新架構(gòu)在開源,新平臺也在開源,連頂尖的研究成果也都以開源形式發(fā)布。開源逐漸成為全球科技進(jìn)步至關(guān)重要的創(chuàng)新方向。

特征三:國家對開源軟件前所未有的重視

2021年,《中華人民共和國國民經(jīng)濟(jì)和社會發(fā)展第十四個五年規(guī)劃和2035年遠(yuǎn)景目標(biāo)綱要》明確指出要“支持?jǐn)?shù)字技術(shù)開源社區(qū)等創(chuàng)新聯(lián)合體發(fā)展,完善開源知識產(chǎn)權(quán)和法律體系,鼓勵企業(yè)開放軟件源代碼、硬件設(shè)計和應(yīng)用服務(wù)”。毫無疑問,開源被提到國家戰(zhàn)略層面進(jìn)行支持,將走上跨越式發(fā)展的快車道。

人民銀行辦公廳、中央網(wǎng)信辦秘書局、工業(yè)和信息化部辦公廳、銀保監(jiān)會辦公廳、證監(jiān)會辦公廳聯(lián)合發(fā)布《關(guān)于規(guī)范金融業(yè)開源技術(shù)應(yīng)用與發(fā)展的意見》(以下簡稱《意見》)。近年來,開源技術(shù)在金融業(yè)各領(lǐng)域得到廣泛應(yīng)用,在推動金融機(jī)構(gòu)科技創(chuàng)新和數(shù)字化轉(zhuǎn)型方面發(fā)揮著積極作用,但也面臨安全可控等諸多挑戰(zhàn)?!兑庖姟返某雠_,有助于規(guī)范金融機(jī)構(gòu)合理應(yīng)用開源技術(shù),提高應(yīng)用水平和自主可控能力,促進(jìn)開源技術(shù)健康可持續(xù)發(fā)展。

二、軟件的發(fā)展與開源的歷史

在計算機(jī)行業(yè)的早期,軟件是作為幫助硬件發(fā)揮功能的輔助角色存在。在20世紀(jì)70年代Unix誕生之前,業(yè)界并沒有使用高級語言開發(fā)操作系統(tǒng)的先例。由于軟件不具備通用性,而且軟件本身并不作為獨立銷售實體存在,只是軟件開發(fā)項目,交付項目的同時交付源代碼也是常規(guī)做法。客戶需要持續(xù)維護(hù)系統(tǒng)的運行,開發(fā)方也不愿意承擔(dān)軟件全生命周期的維護(hù)責(zé)任。

隨著Unix的誕生并且主要以C語言實現(xiàn),開放的通用操作系統(tǒng)成為可能,軟件的開發(fā)與授權(quán)售賣也隨著硬件和軟件對兼容性和通用性的追求成為可能。在Unix發(fā)展的早期,由于其擁有者AT&T回避進(jìn)入軟件行業(yè)的特殊態(tài)度(原因是主營電信業(yè)務(wù)正在嚴(yán)厲的反壟斷高壓之下,不愿意添加額外的麻煩),在授權(quán)給用戶使用時,以源代碼形式提供并且不提供后續(xù)技術(shù)支持,允許用戶在自己的環(huán)境中修正問題和移植到新的硬件平臺。這一階段得到授權(quán)的高校、政府和一些商業(yè)機(jī)構(gòu)為后續(xù)Unix的發(fā)展打下了基礎(chǔ),也為后來的Unix紛爭和分裂埋下了種子。

進(jìn)入20世紀(jì)80年代,隨著計算機(jī)的通用性增強(qiáng)與逐漸普及,可以在大量計算機(jī)上運行的通用軟件逐漸催生了商業(yè)軟件行業(yè)并且持續(xù)蓬勃發(fā)展。大批軟件公司涌現(xiàn)并且時至今日很多仍然是行業(yè)巨頭,如Microsoft、SAP、Oracle、Adobe等。這個時代的一個特點是隨著計算機(jī)的使用者從專業(yè)人員擴(kuò)大到普通用戶,軟件的交付形態(tài)逐漸變成了只提供運行態(tài)程序而不再提供源代碼,銷售給用戶的也是廠商定義的使用授權(quán),廠商除了銷售軟件之外,還提供收費的技術(shù)支持服務(wù):為客戶升級軟件、修正問題,為新的設(shè)備提供運行環(huán)境。消費者作為使用者不再擁有修改運行軟件的權(quán)限,軟件的授權(quán)使用與技術(shù)支持服務(wù)形成了商業(yè)軟件行業(yè)的重要商業(yè)模式。

在個人電腦領(lǐng)域,時至今日,客戶使用軟件的方式?jīng)]有本質(zhì)變化。由于絕大部分用戶不是軟件開發(fā)專業(yè)人士,不存在自行修改系統(tǒng)或應(yīng)用軟件的需求,這種模式很好適應(yīng)了用戶需求并得以持續(xù)。

在服務(wù)器領(lǐng)域,Unix陣營發(fā)源于AT&T分發(fā)的早期代碼,SUN、HP、DEC、IBM等基于不同的硬件架構(gòu)發(fā)展了各自的Unix系統(tǒng),形成了所謂的開放系統(tǒng)的生態(tài)格局。通用與兼容的需求催生了后續(xù)的POSIX等統(tǒng)一標(biāo)準(zhǔn),但是Unix的授權(quán)與法律條文的模糊性以及后續(xù)持有者的態(tài)度和野心等導(dǎo)致了大量問題,各種源自Unix的系統(tǒng)分別改成了各家自己品牌分別發(fā)展,與Unix主干間也缺乏統(tǒng)一的協(xié)調(diào),這種分裂給了 Windows NT 巨大的商業(yè)機(jī)會,發(fā)展成了今天的 Windows Server 系列操作系統(tǒng),這些商業(yè)操作系統(tǒng)仍然是只提供運行時的使用許可給最終用戶,并且提供商業(yè)性的技術(shù)支持服務(wù)。

20世紀(jì)80年代,軟件行業(yè)的另外一個重要事件是自由軟件基金會(Free Software Foundation,簡稱FSF)的成立,在學(xué)術(shù)與科研機(jī)構(gòu)中,“黑客精神”始終是很多人的追求,對軟件極致自由追求的基礎(chǔ)是擁有對源代碼的修改權(quán)。這里不得不說,理查德·斯托曼(Richard Stallman)(對他的各種毀譽不影響GNU和FSF的意義和價值)發(fā)起的GNU(GNU is Not Unix)行動重新開發(fā)實現(xiàn)了Unix的大部分工具系統(tǒng),并且以GPL的許可發(fā)行這些軟件,GPL對衍生軟件強(qiáng)制要求持續(xù)提供源代碼,GNU實現(xiàn)了絕大部分的Unix常見工具體系,但是仍然無法擺脫對Unix操作系統(tǒng)核心的依賴,直到1991年林納斯·托瓦茲(Linus Torvalds)開始的Linux核心的開發(fā)工作填補(bǔ)了這個空白,同樣采用GPL許可的Linux核心和外圍工具體系一起形成了Linux的生態(tài)系統(tǒng),大批積累了豐富Unix使用與開發(fā)經(jīng)驗的高校、科研機(jī)構(gòu)與商業(yè)機(jī)構(gòu)的積極參與促成了Linux的快速成長和成熟。

20世紀(jì)90年代中期以后,互聯(lián)網(wǎng)開始蓬勃發(fā)展,各種Unix衍生品與Windows NT在起步階段也支撐了這個發(fā)展過程。

隨著用戶規(guī)模爆炸式增長,成本成為一個不可忽視的因素,尤其很多新創(chuàng)互聯(lián)網(wǎng)企業(yè)并不愿意把寶貴的資金消耗在昂貴的硬件設(shè)備和僵化的軟件授權(quán)上。在這個階段,Intel也從PC的CPU提供者,逐漸進(jìn)入了服務(wù)器CPU的提供者行列,規(guī)模優(yōu)勢也使其CPU能力逐漸可以比肩服務(wù)器的 RISC CPU,這些CPU為運行開放系統(tǒng)的各種Unix服務(wù)器提供核心能力,Linux因其不強(qiáng)制收費和開放后續(xù)源代碼修改的優(yōu)勢,被很多新興互聯(lián)網(wǎng)企業(yè)選為后臺服務(wù)運行平臺。廣泛應(yīng)用和大規(guī)模的部署也幫助Linux持續(xù)快速發(fā)展,演進(jìn)成了支持關(guān)鍵業(yè)務(wù)的服務(wù)器操作系統(tǒng),與此同時,操作系統(tǒng)之上的各種開源系統(tǒng)也得到了廣泛的運用與持續(xù)發(fā)展,逐漸形成了今天互聯(lián)網(wǎng)巨頭們基于開源軟件和自研業(yè)務(wù)軟件的普遍現(xiàn)狀。

進(jìn)入21世紀(jì),隨著開源軟件在互聯(lián)網(wǎng)領(lǐng)域的廣泛使用,同時結(jié)合CPU領(lǐng)域Intel的統(tǒng)治地位的逐漸確立和各種封閉式的開放系統(tǒng)的持續(xù)衰落,很多商業(yè)企業(yè)也開始接受開源操作系統(tǒng)和開源技術(shù)平臺軟件,應(yīng)用場景的豐富進(jìn)一步促進(jìn)了各種開源軟件的發(fā)展,形成了今天仍然激烈競爭的格局。

三、開源軟件的定義與許可體系的發(fā)展

從字面上看,開源是指開放軟件的源代碼給使用者,但是單純提供源代碼并不是目前“開源軟件”的標(biāo)準(zhǔn)定義,“開源軟件”是指,軟件向使用者提供源代碼并且授予修改和持續(xù)演進(jìn)的自由,因此對修改后的軟件再分發(fā)在規(guī)定上的差異,形成了不同的開源軟件許可體系。

目前開源軟件的許可體系主要分為兩大類:一類強(qiáng)制要求再開源,代表性的有GPL許可體系;另一類不強(qiáng)制要求衍生開源,為寬松開源許可證,代表性的有BSD、MIT、Apache等許可體系。GPL許可體系強(qiáng)制要求下游“發(fā)行”時提供源代碼,不得改變GPL的兼容性,限制從開源軟件轉(zhuǎn)變成非開源軟件(但“發(fā)行”的定義,存在可被利用的空間)。強(qiáng)制繼續(xù)開源,又衍生出對服務(wù)提供者,尤其是云服務(wù)提供者的不同變種許可,如AGPL等。由于限制過多、過于復(fù)雜,所以AGPL的接受程度有限。寬松開源許可,要求聲明來源并保留原始軟件的許可證部分,但不要求衍生部分強(qiáng)制開源。

開源軟件判斷的具體標(biāo)準(zhǔn)可以參見[1]的十條原則:一、不限制軟件的再次分發(fā)的自由;二、提供可用于持續(xù)開發(fā)的源代碼;三、允許在源代碼基礎(chǔ)上進(jìn)行修改和開發(fā)工作;四、確保原創(chuàng)源代碼完整性,變更可以是補(bǔ)丁方式,也可以改變名稱或版本號以進(jìn)行區(qū)別;五、不存在針對特定人或人群的差異性限制條款;六、不存在對軟件使用領(lǐng)域的限制;七、衍生產(chǎn)品發(fā)行時不施加更嚴(yán)格的使用許可限制;八、軟件許可在每一個組件級生效而不是僅適用于整體;九、軟件許可不擴(kuò)散到同介質(zhì)發(fā)行的其他軟件;十、軟件許可不附帶影響技術(shù)中立的條款。

四、開源軟件對軟件行業(yè)商業(yè)模式的影響

1. 開源沒有改變軟件運行的基本模式

在一個成熟的軟件市場上,軟件本身的技術(shù)支持服務(wù)和開發(fā)發(fā)行本身同樣重要,迄今為止無人能夠證明一個復(fù)雜軟件的正確性。軟件的質(zhì)量取決于設(shè)計、實現(xiàn)、測試和運行過程中暴露問題的持續(xù)修復(fù),開源軟件改變的只是開發(fā)階段和發(fā)行形態(tài),其他周期軟件規(guī)律仍然是一樣的,尤其是提供給大量非開發(fā)者使用的基礎(chǔ)平臺類軟件,完全把技術(shù)支持工作交給使用者是不可行的,技術(shù)支持能力也直接影響軟件可以支持的業(yè)務(wù),以順應(yīng)軟件本身發(fā)展的方式支持客戶的業(yè)務(wù)運行并保證服務(wù)質(zhì)量,仍然是軟件業(yè)務(wù)的重要組成部分。

2. 開源成為分布式協(xié)作開發(fā)模式的典范和推動者

今天的開源軟件,更重要的意義是一種協(xié)同開發(fā)模式,開源軟件項目的治理方式也有封閉與開放的差異,開源項目的主導(dǎo)權(quán)與管理權(quán)有兩種常見方式,一種是項目歸屬于某個基金會組織,如Apache,另外一種是由發(fā)起者或創(chuàng)建者為主導(dǎo)的管理模式,如MySQL和Linux核心等。很難用簡單的方法判斷哪種方式一定就是最好的,但是相對來說,由一個有信用的、有成熟制度模式的非營利組織管理,更容易受到信任和吸引更廣泛的參與者。跨組織跨地域的協(xié)同在有效支持各種軟件能力的持續(xù)發(fā)展,像Linux核心這樣以千萬行代碼計的軟件仍在持續(xù)快速迭代,也推動了整個IT行業(yè)持續(xù)快速發(fā)展。

3. 開源不等于免費

開源軟件起源于自由軟件運動,自由軟件選擇的Free Software的名字往往被誤解為“免費”,其實在這里free的含義是“自由”,開源是軟件自由精神的體現(xiàn)。今天即便是承諾完全開源的軟件,如Linux,主要的商業(yè)化形態(tài)仍然是提供有質(zhì)量保證的發(fā)行版和技術(shù)支持服務(wù),收取許可費用不是被認(rèn)可的業(yè)務(wù)形態(tài)。MySQL是一個特例,因為它同時提供不同的軟件許可,商業(yè)版軟件和社區(qū)版軟件本質(zhì)上是兩個產(chǎn)品,只不過在集中的控制之下共享了社區(qū)版的絕大部分代碼,根本原因在于MySQL相關(guān)的所有知識產(chǎn)權(quán)完全屬于單一商業(yè)實體。

4. 以發(fā)行版的方式提供軟件和在云上提供服務(wù)仍然是主流業(yè)務(wù)模式

目前絕大部分軟件的使用者,都不是軟件本身的開發(fā)者。系統(tǒng)和平臺軟件的功能復(fù)雜、規(guī)模龐大,依靠使用者自行解決問題和持續(xù)演進(jìn),既不必要也不現(xiàn)實。軟件發(fā)行版和云服務(wù)除了提供單獨的軟件外,還要進(jìn)行整體的驗證測試和優(yōu)化工作。這些保證質(zhì)量和兼容性的工作與不開源的專有軟件的發(fā)布沒有本質(zhì)差異,而這些工作是軟件與運行環(huán)境配合運行時不可或缺的,持續(xù)的技術(shù)支持是軟件運行的必要保障手段,認(rèn)可這些工作的價值也是提升效率和保障系統(tǒng)運行的選擇。

五、企業(yè)作為開源使用者的挑戰(zhàn)

按照工信部對開源生態(tài)組成要素的分析,開源生態(tài)以五要素、三環(huán)節(jié)構(gòu)成。其中以開源項目為中心,依托開源社區(qū)協(xié)作形成軟件、硬件等開源項目。涉及開源貢獻(xiàn)者、開源使用者、開源運營者、開源服務(wù)者多個相關(guān)方,包含開源治理、開源運營、開源商業(yè)布局等多個環(huán)節(jié),依托代碼托管平臺等基礎(chǔ)設(shè)施,滿足開源規(guī)則要求。

大多數(shù)企業(yè)是以行業(yè)開源者和行業(yè)使用者存在,它們所面臨的挑戰(zhàn)也不盡相同。

1. IT架構(gòu)治理的挑戰(zhàn)——CIO的視角

不同的企業(yè)因為自身IT建設(shè)階段的不同,使用開源軟件的方式也各有不同。但不管哪種方式,最終都需要考慮IT架構(gòu)統(tǒng)一治理。

第一種,新型企業(yè)全部業(yè)務(wù)從一開始就使用開源軟件構(gòu)建。常見于互聯(lián)網(wǎng)公司和開源達(dá)到比較成熟階段后創(chuàng)立的企業(yè),一般沒有形成為軟件和軟件服務(wù)付費的習(xí)慣。而且這類公司把IT能力作為核心競爭力,基于開源技術(shù)平臺構(gòu)建自身核心業(yè)務(wù)系統(tǒng)。平臺技術(shù)團(tuán)隊完全有能力采用開源和定制化修改的開源衍生產(chǎn)品,定制與適配往往由自己的開發(fā)團(tuán)隊承擔(dān)。但隨著定制系統(tǒng)的發(fā)展和業(yè)務(wù)重要性的提升,代碼改動和軟件升級則面臨很大挑戰(zhàn),被迫選擇持續(xù)加大技術(shù)投入,或走向避免改動的保守狀態(tài),長此以往,便會陷入落后和僵化的局面,技術(shù)升級時面臨很高的復(fù)雜性和影響業(yè)務(wù)連續(xù)運行。

第二種,傳統(tǒng)企業(yè)局部使用開源軟件替換商業(yè)軟件。常見于成立時間已久的大中型企業(yè),長期使用商業(yè)軟件享受軟件技術(shù)服務(wù),對降本增效和技術(shù)掌控的追求催生了對開源軟件的訴求,新技術(shù)與新開發(fā)方式也使新的業(yè)務(wù)發(fā)展無法拒絕已經(jīng)成為平臺級技術(shù)主流的開源軟件。

第三種,經(jīng)歷開源與商業(yè)軟件之間的選擇與切換過程。特定行業(yè)在一定發(fā)展階段選擇了商業(yè)軟件,越過發(fā)展臺階后重新?lián)肀ч_源軟件和加大自身研發(fā)投入,典型如阿里巴巴,電商業(yè)務(wù)對交易一致性有很高要求,主要靠關(guān)系數(shù)據(jù)庫提供支撐能力。淘寶起步時MySQL可以幫忙跑通,規(guī)模快速擴(kuò)大后依靠商業(yè)數(shù)據(jù)庫軟件渡過了快速成長期,后續(xù)的發(fā)展更多依賴分布式架構(gòu)的支撐能力,隨著技術(shù)和架構(gòu)能力的積累,最終用分布式架構(gòu)消除了對商業(yè)數(shù)據(jù)庫產(chǎn)品的依賴,整體技術(shù)棧也采用了開源體系并且持續(xù)發(fā)展。

鑒于開源軟件自身的特點、版本路線不同,以及不同應(yīng)用開源組合的復(fù)雜性,不同企業(yè)有選擇不同企業(yè)級技術(shù)架構(gòu)路線的權(quán)利,但都需要考慮避免在開源的使用上重復(fù)造輪子。

2. 自主可控的挑戰(zhàn)

“自主”的含義大致有兩種理解。一種是指采用主權(quán)范圍內(nèi)廠商具有完全知識產(chǎn)權(quán)掌控力的軟件,不受國外產(chǎn)品和服務(wù)體系供應(yīng)的限制,因此這里的“主”是指的國家主體;另一種“主”是指的企業(yè)本身,企業(yè)可根據(jù)自主意志,按自己的需求、想法,在不違反授權(quán)的情況下,自由地修改和使用軟件。

“可控”對應(yīng)的是“卡脖子”,無論是開源社區(qū)還是商業(yè)授權(quán)的軟件。一些企業(yè)想從現(xiàn)在開始就不再采購開源軟件的商用發(fā)行版和商業(yè)服務(wù)。誠然,集中精力自己研發(fā)、自己把控,在特定的場景上,放棄外部的商用依賴,另起爐灶,做出一套完全自主的產(chǎn)品,這樣的成功例子是有的,部分企業(yè)也真的做到了,但這畢竟是極少數(shù);客觀上,這種做法也需要有大量優(yōu)秀的軟件工程師,并且在開源軟件上積累了大量的經(jīng)驗,才能夠?qū)崿F(xiàn),如果軟件業(yè)務(wù)不是主業(yè),長期也有很大挑戰(zhàn)。

對大多數(shù)企業(yè)而言,要想做到自主可控、規(guī)避風(fēng)險,需要對運行和依賴的軟件的適度掌握,最好能仔細(xì)鉆研開源軟件的代碼、架構(gòu)、測試,即便不能,也要一定程度掌握關(guān)鍵的驗證能力和調(diào)試能力,結(jié)合軟件的升級和部署能力,確??梢詰?yīng)對緊急問題。這里的訣竅就是,與軟件產(chǎn)品的主流社區(qū)協(xié)同,通過學(xué)習(xí)和模仿快速構(gòu)建自身能力。因此,企業(yè)不僅不應(yīng)該切斷與開源廠商的聯(lián)系,相反,自己越是有可能面臨風(fēng)險,越應(yīng)該廣泛建立與開源商業(yè)生態(tài)體系的聯(lián)系,除非這種聯(lián)系真的被外部客觀不可抗拒原因所切斷。

3. 成本可控的挑戰(zhàn)

大多數(shù)開源軟件的成本,都是隱藏的,來自持續(xù)的質(zhì)量控制、升級和運維服務(wù)的成本。開源軟件本身也是軟件產(chǎn)品,也會遵從軟件的基本規(guī)律,使用大量開源軟件組合對于技術(shù)支持能力的要求非常高。雖然廣泛使用的開源軟件的質(zhì)量和可靠性水平都很高,但是靠單一企業(yè)內(nèi)部的技術(shù)力量支持海量源代碼產(chǎn)品的持續(xù)運行難度非常大,只有少數(shù)把IT作為核心競爭力的巨頭才有可能為自己的業(yè)務(wù)提供非常高的穩(wěn)定性保障。

雖然各企業(yè)在數(shù)字化時代都在不斷加大IT投入,但是仍需要避免一個認(rèn)知誤區(qū):某個單獨軟件的授權(quán)成本,并不是投入的全部,后續(xù)支撐性投入才是重頭戲。企業(yè)必須超越簡單的底線成本模型或ROI計算邏輯,站在業(yè)務(wù)視角看整體成本。

4. 安全的挑戰(zhàn)

開源軟件漏洞數(shù)量的上升,可以歸因于開放源組件的廣泛采用。過去幾年開源社區(qū)的大量增加,以及媒體對最近一些數(shù)據(jù)泄露事件的報道,使得人們對開放源代碼安全的關(guān)注提高。根據(jù)統(tǒng)計數(shù)字,84%的開源代碼庫至少含有一個漏洞,60%的已審核代碼庫包含高風(fēng)險漏洞。2021年12月,最新的log4j2的遠(yuǎn)程代碼執(zhí)行漏洞就是典型的事件,該漏洞影響巨大,一旦被攻擊者利用會造成嚴(yán)重危害。開源軟件安全問題多被認(rèn)為是源于管理上的疏漏。主要體現(xiàn)在:一、開源軟件使用者更新不及時;二、開源項目缺少如SDL這樣的流程和管理工具;三、攻擊者對開源生態(tài)的攻擊增加。

5. 合規(guī)的挑戰(zhàn)

以對合規(guī)要求最為嚴(yán)格的金融行業(yè)為例,《關(guān)于規(guī)范金融業(yè)開源技術(shù)應(yīng)用與發(fā)展的意見》明確提出:金融機(jī)構(gòu)應(yīng)當(dāng)遵循開源技術(shù)相關(guān)法律和許可要求,合規(guī)使用開源技術(shù),明確開源技術(shù)的使用范圍和使用的權(quán)利與義務(wù),保障開源技術(shù)作者或權(quán)利人的合法權(quán)益。

考慮到開源的合規(guī)性,源碼的授權(quán)模式變得至關(guān)重要。為了主動發(fā)現(xiàn)問題,起步階段可以考慮采用集中掃描的方式,在企業(yè)內(nèi)對使用的軟件版本發(fā)布前批量進(jìn)行源碼開源合規(guī)的掃描。但是隨著開源軟件日益廣泛使用,一方面掃描本身是一個復(fù)雜過程,另一方面一旦發(fā)現(xiàn)問題留給開發(fā)人員修復(fù)問題的時間太短。如何能高效地統(tǒng)計企業(yè)內(nèi)開源產(chǎn)品許可情況和使用情況、快速修正不合規(guī)的使用,形成企業(yè)開源軟件合規(guī)一覽表,是目前企業(yè)使用開源軟件合規(guī)性所面臨的重大挑戰(zhàn)之一。

六、企業(yè)作為行業(yè)開源者的挑戰(zhàn)

1. 構(gòu)建生態(tài)的挑戰(zhàn)

早期的開源社區(qū)運營,并不能很好地反映開源技術(shù)在各行業(yè)各企業(yè)的實際應(yīng)用情況。目前,開源社區(qū)與基金會的運營更看重產(chǎn)業(yè)溝通和用戶分享,軟件產(chǎn)品基于云的使用量統(tǒng)計可能形成一個新的生態(tài)運營機(jī)制。

2. 商業(yè)模式的挑戰(zhàn)

開源產(chǎn)品的商業(yè)模型基本上融合了以下四種模型:開放核心(Open-Core),同時提供差異化的商業(yè)產(chǎn)品;專業(yè)服務(wù)(Professional Services);托管(Hosting);市場(Market place),提供應(yīng)用商店、應(yīng)用市場、插件。

對于成功的開源公司來說,最常見的模式是開放核心產(chǎn)品,將托管、服務(wù)作為第二和第三收入來源。這些組合可能在某一時期對開源產(chǎn)品或某一行業(yè)來說是有效的。不過隨著市場競爭和客戶的不斷變化,這些模式可能都不適用,可能需要為自己產(chǎn)品找到獨特的商業(yè)模式。而傳統(tǒng)線下的軟件銷售、分發(fā)和交付模式,很難成為開源的商業(yè)模式。

七、云時代企業(yè)使用開源軟件的變化

1. 云計算帶來的變化

客戶從購買軟件自己負(fù)責(zé)整個使用過程,轉(zhuǎn)變成直接使用服務(wù),不需要關(guān)注服務(wù)之外的支撐細(xì)節(jié)??蛻魧τ谲浖旧硐嚓P(guān)的商業(yè)條款敏感度下降,服務(wù)包裝后的不透明性也會削弱使用者對軟件開發(fā)的參與程度,尤其是確保運行和能力提供的責(zé)任會轉(zhuǎn)移到云計算的提供者。

廣泛使用的開源軟件許可制定時間較早,當(dāng)時云計算還沒有出現(xiàn)或沒有形成大影響,許可條款主要針對的軟件以發(fā)行為主的情況。云服務(wù)尤其是封裝后的PaaS服務(wù)包含的軟件,規(guī)避了GPL這樣的強(qiáng)制再開源的義務(wù),開源衍生出的云服務(wù)一定程度縱容了云廠商減少對開源軟件本身的貢獻(xiàn)和分享。

互聯(lián)網(wǎng)巨頭們廣泛使用開源軟件的成功經(jīng)驗和公共云的持續(xù)發(fā)展已經(jīng)證明了絕大部分場景下閉源的基礎(chǔ)設(shè)施和支撐平臺類軟件不再具有普遍的發(fā)展前途。

2. 云與開源協(xié)同發(fā)展

沒有客戶希望自己被特定供應(yīng)商綁定,公共云也是一樣,支持應(yīng)用運行的基礎(chǔ)平臺也從軟件年代的操作系統(tǒng)和數(shù)據(jù)庫演進(jìn)到了容器調(diào)度,混合云作為一種會長期存在的支撐方式也會持續(xù)發(fā)展?;谶@些條件,云平臺應(yīng)該提供的是一種通用的開放技術(shù),在應(yīng)用使用的功能性接口方面,遵守標(biāo)準(zhǔn)的通用性,不限制應(yīng)用的可遷移性;在下層的運行引擎方面,提供差異化的非功能支撐,幫助客戶更有效地實現(xiàn)業(yè)務(wù)目標(biāo);結(jié)合具有自身特色構(gòu)建的關(guān)鍵領(lǐng)域差異化服務(wù)能力,如數(shù)據(jù)庫等,為用戶提供敏捷靈活的開發(fā)能力和穩(wěn)定高效的支撐能力。

主流云計算廠商正在企業(yè)IT市場發(fā)揮越來越大的作用,主流開源軟件與云平臺的有效集成是云平臺的重要能力體現(xiàn)。開源技術(shù)也是云服務(wù)未來的發(fā)展方向,積極有效的參與主流開源項目是云廠商的重要機(jī)會。大型云廠商投入人力和資金幫助開源項目持續(xù)發(fā)展,有助于云技術(shù)能力得到有效發(fā)揮。

對于使用者來說,市場上主流云平臺在容器、中間件和數(shù)據(jù)庫這些主要技術(shù)能力方面,提供的功能一致性遠(yuǎn)遠(yuǎn)高于客戶自主搭建。用戶在設(shè)計自己的業(yè)務(wù)系統(tǒng)時,也要充分考慮對技術(shù)平臺的不同層級的抽象和管理,減少對特定管理能力的硬性綁定。應(yīng)用想要實現(xiàn)在不同云平臺之間一行代碼都不改的切換并不現(xiàn)實,但是追求云特有能力不侵入應(yīng)用代碼而只是在管控層面發(fā)揮作用,應(yīng)該是現(xiàn)實可行的做法,這也是平臺中立的云原生追求的方向。

公共云和各種形態(tài)的混合云是未來IT能力的主流承載形式。開源軟件已經(jīng)證明自身是平臺技術(shù)軟件有效的、主流的發(fā)展形態(tài),云計算與開源的結(jié)合會成為必然趨勢。開源軟件以不同程度托管在云上運行,提供技術(shù)能力,會是未來企業(yè)IT面臨的主要選擇。不同的托管程度,在管理層和云集成程度的差異,運行時的優(yōu)化能力,都會是云服務(wù)的差異所在,更強(qiáng)的管理能力集成往往會伴隨更深的運行優(yōu)化和更少的管理需求,提供的服務(wù)也會具備更強(qiáng)的自主運行能力,形成的結(jié)果就是PaaS類服務(wù),如數(shù)據(jù)庫等,客戶也會選擇自行部署和管理,這種情況下云基礎(chǔ)設(shè)施需要提供足夠開放性供客戶自己集成。

同時基礎(chǔ)設(shè)施的服務(wù)能力也會直接反映在最終服務(wù)和業(yè)務(wù)應(yīng)用的整體性價比上。軟件尤其是技術(shù)平臺軟件,需要大量的測試驗證和優(yōu)化調(diào)整,來達(dá)到穩(wěn)定性和性價比的最優(yōu),公共云的運行環(huán)境及其支持的海量、差異化客戶場景,為軟件的成熟提供了最佳的環(huán)境。大型公共云廠商也是未來有能力投入軟件開發(fā)驗證和持續(xù)支持服務(wù)的最重要資源池。除了優(yōu)化之外,保持托管的軟件服務(wù)本身的開放性和兼容性,是非常重要的努力方向,以運行效果而不是黑盒方式吸引并留住客戶會成為云平臺的核心競爭力。

云計算的持續(xù)發(fā)展為開源軟件提供了新的舞臺,云平臺與開源社區(qū)有效合作,并且避免鎖定,來獲得用戶的信任,是云平臺開放性的重要體現(xiàn),也會是未來IT行業(yè)持續(xù)發(fā)展的支撐力量。

總體來說,云自誕生開始與生俱來的特性以及不斷發(fā)展的能力,天然就具備了解決企業(yè)可持續(xù)的使用開源軟件所帶來的挑戰(zhàn)。

目前,云被證明是最好的企業(yè)IT架構(gòu)治理的平臺,這個治理包括對開源技術(shù)的治理。

云平臺能夠更好地集中解決安全與合規(guī)的問題,針對不同的開源軟件合規(guī)掃描、漏洞掃描、升級等等。

云原生的發(fā)展使得各個不同的基礎(chǔ)開源軟件和創(chuàng)新開源軟件的技術(shù)融合,云時代開源軟件的可觀測性、開發(fā)效率和管理效能大大提升。

云廠商本身就是開源最大的使用者、最佳實踐,可以幫企業(yè)管理屏蔽試錯風(fēng)險。

云平臺天然是一個協(xié)作平臺,可以讓開源貢獻(xiàn)者、開源使用者,在云上互通需求驅(qū)動發(fā)展。

新的時代,開源的發(fā)展越來越蓬勃,開源和云的關(guān)系越來越復(fù)雜,耦合度越來越高,云是開源軟件允許的最佳環(huán)境之一,為開源軟件插上安全高效的騰飛引擎。

責(zé)任編輯:趙寧寧 來源: ITPUB
相關(guān)推薦

2022-02-28 15:28:43

開源云時代軟件

2020-05-27 10:46:49

Kubernetes容器云計算

2018-08-23 08:21:54

TensorFlow機(jī)器學(xué)習(xí)人工智能

2015-10-28 18:04:51

2014-11-14 17:39:23

云計算

2018-05-04 10:48:07

Kubernetes容器K8S

2018-11-01 15:50:24

MongoDB服務(wù)器數(shù)據(jù)庫

2012-02-07 13:29:35

2012-07-22 15:22:17

加班

2022-07-11 14:38:43

Veeam

2019-02-19 09:34:53

工業(yè)物聯(lián)網(wǎng)IIOT物聯(lián)網(wǎng)

2020-08-10 15:30:24

XDR網(wǎng)絡(luò)安全網(wǎng)絡(luò)威脅

2017-05-08 11:39:33

Web WorkersWeb

2013-07-31 09:48:08

IT企業(yè)硬件

2020-07-01 23:17:13

物聯(lián)網(wǎng)設(shè)備物聯(lián)網(wǎng)IOT

2015-03-11 11:23:38

MySQLPHP開發(fā)

2012-04-27 09:24:39

Google Driv云存儲

2020-01-06 10:21:54

容器微服務(wù)架構(gòu)

2013-09-02 11:22:40

虛擬化私有云

2011-12-29 09:54:07

數(shù)據(jù)安全
點贊
收藏

51CTO技術(shù)棧公眾號