阿里开源软件替换指南
阿里作為一家技術(shù)公司,一舉一動牽動業(yè)界的發(fā)展。2013年,阿里搞出去ioe的概念,旨在消除對他人的依賴。而現(xiàn)在,它自己卻通過變賣開源產(chǎn)品,綁架企業(yè),充當(dāng)了類似ioe的角色。
相比較一些國際知名的開源軟件,阿里的開源軟件文檔不全、功能閹割、失久未修,很沒誠意。它唯一目的就是讓你買它的阿里云服務(wù),哦,即使買了服務(wù)也有無限的內(nèi)購。
阿里的開源軟件還是不要玩,大多是為了商業(yè)宣傳。小公司或者個人的軟件能通過長期的口碑,逐漸將優(yōu)勢顯現(xiàn);而影響力比較高的阿里之流可能會為了短期利益混淆視聽,將壞的唱成好的。
怎么正確使用阿里開源的軟件呢,我這里有個建議。
像一些工具包之類的,比如fastjson、druid等,可以放心使用,因為替換容易;像一些低頻使用的,工作量堆徹的軟件如DataX,也可以酌情使用;而像一些企業(yè)級的應(yīng)用,可能要持續(xù)數(shù)年的重要技術(shù)棧,比如dubbo,就要小心一些,說不定啥時候就撂挑子不干了。
當(dāng)然也是有分別的。像RocketMQ因為進(jìn)了apache,就比較照顧自己的面子。即使這樣,社區(qū)版的和內(nèi)部的版本之間,也有不少的差別。
通常都是雷聲大雨點小,天天開分享會。發(fā)布個初始版本以后,就太監(jiān)了。所以,使用阿里的軟件要慎重。為了消除項目長期的技術(shù)風(fēng)險,對此公司開源的東西,要充滿戒備。
評估標(biāo)準(zhǔn)
最后更新時間
通常,源碼都會放在github。可以看一下代碼的最新更新時間。當(dāng)然這個更新不是隨便的,更新一個readme文檔不算更新,要看是不是重要功能和bug修復(fù)。
當(dāng)然更新時間還和項目的新舊有關(guān),比較新的項目參考價值小。你要隨便用了,需要承擔(dān)風(fēng)險。
比如tddl,7年前的代碼了。你要用了就上當(dāng)了。
這樣的項目很多。現(xiàn)在有人提t(yī)ddl和cobar,這是得有多落伍。
Star數(shù)
star數(shù)其實是大家的關(guān)注度,并不是判定的唯一標(biāo)準(zhǔn)。2018年,阿里的員工有7.4w。如果有十分之一的員工star了他們公司的項目,就有7千多星。再加上每年離職的流動人口,這個數(shù)值就呵呵了。即使這樣,大多數(shù)項目關(guān)注度并不高。
star數(shù)量能夠看出項目的歡迎程度,但大型公司的項目要打折。
項目來源
有些項目確實是公司內(nèi)部孵化出來的,比如Canal等。但大多數(shù)是拿了別的公司的開源軟件,修了一些bug,做了一點改進(jìn),然后加個前綴當(dāng)作自己的作品。
這類開源軟件不想著通過正規(guī)途徑去反饋社區(qū),也不能肩負(fù)起后續(xù)的維護(hù)工作。一般都是為了非常私人的或者團隊的目的,要么生命周期很短,要么轉(zhuǎn)向閉源。它通過發(fā)展分支的方式,濫用影響力,干擾原開源軟件的發(fā)展,合法但是不道德的。
典型的如AliSQL、AliRedis、以及最新的spring-cloud-alibaba,搞到最后只能適應(yīng)自己的云環(huán)境,最終為商業(yè)化服務(wù)。而開發(fā)者真正能從中得到的成本和便捷,非常有限。
文檔
如果只有簡單的幾行文檔,加上鋪天蓋地的開發(fā)者大會宣傳,不用也罷。當(dāng)然如果你有大把的時間也可以搞一下。
講原理的文檔是最優(yōu)的;講用法的文檔是有誠意的;啥都沒有是正常的;講成就和吹牛皮的文檔是最次的,大家要有分辨力。
點到為止,是大公司的特色。否則教會了徒弟餓死了師父,開源的目的就變了。
pin功能
github的pin功能是將自己覺得好的項目置頂?shù)阶钌厦?#xff0c;我們看下阿里置頂?shù)氖巧丁?br />有5個是工具類項目,放心大膽用,因為這是口碑的來源;還有一個是容器引擎,反正用的人也少。如數(shù)家珍啊。
社區(qū)口碑
issues的數(shù)量和心跳圖的比率。還可以在各社區(qū)問一下大家的看法。
像這種,持續(xù)有心跳的項目,用著還是比較放心的。
版權(quán)聲明
這個就算了吧,阿里不遵守,我們也很少有人遵守。
后端項目替換
推薦
工具類的就不提了,推薦用或者能用的有:canal、fastjson、druid、rocketmq。
其他的,就算了吧。像什么核心中間件比如數(shù)據(jù)庫中間件、文件服務(wù)器、緩存等,是不給你用的。
比較有爭議的
dubbo
RPC框架。文檔和社區(qū)不錯。
可惜,躺尸后又詐尸的項目,你不確定什么時候又躺尸了。已經(jīng)透支了很多公司的信任。
替代品:Spring Cloud,功能即豐富又穩(wěn)定。
AliSQL
內(nèi)部有用和牛逼的東西,不見得社區(qū)會買賬。可能用的更多的還是RDS,小公司是可以玩的,上點規(guī)模應(yīng)該想著怎么去掉它。
替代品:MariaDB、MySQL
spring-cloud-alibaba
微服務(wù)框架,二次封裝。建議使用原生Spring Cloud。
End
最近開源界有點小風(fēng)波,先是Redis、Neo4j更改了軟件協(xié)議,然后Kafka緊隨其后,最近連Mongodb也忍不住將協(xié)議改成了SSPL。佛性程序員可能心理不平衡了,不想再免費付出了。
阿里對開發(fā)者的這些傷害,可能是無意的,因為亞馬遜也在干同樣的事情。但開源閹割版產(chǎn)品,鋪天蓋地的正向宣傳,是有意為之。有了阿里云這個造錢的機器,很多東西都會變味。
不要覺得開源軟件是免費的,和商業(yè)公司講情懷,還嫩了點。這么做也無可厚非,但是當(dāng)了婊子還想立牌坊,未免就太無恥了些。
總結(jié)
以上是生活随笔為你收集整理的阿里开源软件替换指南的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 国家文物局:长城沿线群众是文物保护的重要
- 下一篇: 有效的字母异位词---简单