阿里巴巴top10的開源項(xiàng)目列表以及用途(阿里巴巴 開源項(xiàng)目)
阿里巴巴github開源項(xiàng)目有394個(gè),全中國(guó)共享代碼最多的公司,阿里的大佬程序員真的是層出不窮啊,尤其是java程序猿最多。量多,質(zhì)量好,免費(fèi)開源。下面來(lái)看看star排名前10的開源項(xiàng)目以及其特點(diǎn)。
alibaba開源倉(cāng)庫(kù)總數(shù)394
排名第10的是Sentinel。star個(gè)數(shù)20,660 , 主要開發(fā)語(yǔ)言java
Sentinel 是面向分布式服務(wù)架構(gòu)的高可用流量防護(hù)組件,主要以流量為切入點(diǎn),從限流、流量整形、熔斷降級(jí)、系統(tǒng)負(fù)載保護(hù)、熱點(diǎn)防護(hù)等多個(gè)維度來(lái)幫助開發(fā)者保障微服務(wù)的穩(wěn)定性。
Sentinel 具有以下特性:
- 豐富的應(yīng)用場(chǎng)景:Sentinel 承接了阿里巴巴近 10 年的雙十一大促流量的核心場(chǎng)景,例如秒殺(即突發(fā)流量控制在系統(tǒng)容量可以承受的范圍)、消息削峰填谷、集群流量控制、實(shí)時(shí)熔斷下游不可用應(yīng)用等。
- 完備的實(shí)時(shí)監(jiān)控:Sentinel 同時(shí)提供實(shí)時(shí)的監(jiān)控功能。您可以在控制臺(tái)中看到接入應(yīng)用的單臺(tái)機(jī)器秒級(jí)數(shù)據(jù),甚至 500 臺(tái)以下規(guī)模的集群的匯總運(yùn)行情況。
- 廣泛的開源生態(tài):Sentinel 提供開箱即用的與其它開源框架 / 庫(kù)的整合模塊,例如與 Spring Cloud、Dubbo、gRPC 的整合。您只需要引入相應(yīng)的依賴并進(jìn)行簡(jiǎn)單的配置即可快速地接入 Sentinel。
- 完善的 SPI 擴(kuò)展點(diǎn):Sentinel 提供簡(jiǎn)單易用、完善的 SPI 擴(kuò)展接口。您可以通過(guò)實(shí)現(xiàn)擴(kuò)展接口來(lái)快速地定制邏輯。例如定制規(guī)則管理、適配動(dòng)態(tài)數(shù)據(jù)源等。
排名第9的是flutter-go . star個(gè)數(shù)23,268 ,主要開發(fā)語(yǔ)言dart,目前停更
2018年6月21日Google發(fā)布Flutter首個(gè)release預(yù)覽版,作為Google 大力推出的一種全新的響應(yīng)式,跨平臺(tái),高性能的移動(dòng)開發(fā)框架。Flutter是一個(gè)跨平臺(tái)的移動(dòng)UI框架,旨在幫助開發(fā)者使用一套代碼開發(fā)高性能、高保真的Android和iOS應(yīng)用。
flutter優(yōu)點(diǎn)主要包括:
- 跨平臺(tái)
- 開源
- Hot Reload、響應(yīng)式框架、及其豐富的控件以及開發(fā)工具
- 靈活的界面設(shè)計(jì)以及控件組合
- 借助可以移植的GPU加速的渲染引擎以及高性能ARM代碼運(yùn)行時(shí)已達(dá)到高質(zhì)量的用戶體驗(yàn)
Flutter Go 的由來(lái)
flutter 開發(fā)者幫助 APP,包含 flutter 常用 140 組件的demo 演示與中文文檔
- Flutter學(xué)習(xí)資料太少,對(duì)于英文不好的同學(xué)相對(duì)來(lái)說(shuō)比較困難
- 官網(wǎng)文檔示例不夠健全,不夠直觀
- 各個(gè) widget 的用法各異,屬性紛繁,要運(yùn)行一個(gè) widget 的 demo 往往要到處翻閱各種資料
Flutter Go 的優(yōu)勢(shì)
- 詳解常用widget多達(dá) 140 個(gè)
- 配套 Demo 詳解 widget 常規(guī)用法
- 集中整合 widget 案例,一個(gè) APP 搞定所有常用 widget 的用法
- 持續(xù)迭代 ‘追新’ 官方版本
排名第8的是spring-cloud-alibaba, star個(gè)數(shù)24,996,主要開發(fā)語(yǔ)言Java
這個(gè)是大家用得最多的組件了,名不虛傳,實(shí)至名歸.
Spring Cloud Alibaba 致力于提供微服務(wù)開發(fā)的一站式解決方案。此項(xiàng)目包含開發(fā)分布式應(yīng)用微服務(wù)的必需組件,方便開發(fā)者通過(guò) Spring Cloud 編程模型輕松使用這些組件來(lái)開發(fā)分布式應(yīng)用服務(wù)。
依托 Spring Cloud Alibaba,您只需要添加一些注解和少量配置,就可以將 Spring Cloud 應(yīng)用接入阿里微服務(wù)解決方案,通過(guò)阿里中間件來(lái)迅速搭建分布式應(yīng)用系統(tǒng)。
此外,阿里云同時(shí)還提供了 Spring Cloud Alibaba 企業(yè)版 微服務(wù)解決方案,包括無(wú)侵入服務(wù)治理(全鏈路灰度,無(wú)損上下線,離群實(shí)例摘除等),企業(yè)級(jí) Nacos 注冊(cè)配置中心和企業(yè)級(jí)云原生網(wǎng)關(guān)等眾多產(chǎn)品。
排名第7的是fastjson,star個(gè)數(shù)25,216 ,主要開發(fā)語(yǔ)言java
fastJSON是阿里巴巴的開源JSON解析庫(kù),它可以解析JSON格式的字符串,支持將Java Bean序列化為JSON字符串,也可以從JSON字符串反序列化到JavaBean。
相信大家都用過(guò)這個(gè)了,一般大家都用他來(lái)和gson比,我用fastjson比較多一點(diǎn).來(lái)看看chatgpt是怎么比較的
作為AI語(yǔ)言模型,我不能夠有評(píng)價(jià),但是可以為您提供它們的基本信息和功能:
Fastjson是一個(gè)Java語(yǔ)言編寫的高性能JSON處理器,Gson是Google提供的Java開發(fā)包,它可以將Java對(duì)象轉(zhuǎn)換為JSON格式,也可以將JSON字符串轉(zhuǎn)換為Java對(duì)象。兩者都是用于處理JSON數(shù)據(jù)的Java工具包。
Fastjson的優(yōu)點(diǎn)是速度快、易于使用、功能強(qiáng)大,支持多種數(shù)據(jù)格式的轉(zhuǎn)換,包括JSON、XML、Java對(duì)象等。同時(shí),F(xiàn)astjson還提供了一些高級(jí)功能,如自定義序列化和反序列化器、支持注解、支持JSONP等。
Gson的優(yōu)點(diǎn)是穩(wěn)定性好、易于使用、支持多種數(shù)據(jù)格式的轉(zhuǎn)換,包括JSON、XML、Java對(duì)象等。同時(shí),Gson還提供了一些高級(jí)功能,如自定義序列化和反序列化器、支持注解、支持JSONP等。
總體來(lái)說(shuō),F(xiàn)astjson和Gson都是優(yōu)秀的Java工具包,具有自己的優(yōu)點(diǎn)和特點(diǎn),根據(jù)具體需求可以選擇使用。
排名第6名的是canal , star個(gè)數(shù)25,218, 主要開發(fā)語(yǔ)言java
canal [k?'n?l],譯意為水道/管道/溝渠,主要用途是基于 MySQL 數(shù)據(jù)庫(kù)增量日志解析,提供增量數(shù)據(jù)訂閱和消費(fèi)
早期阿里巴巴因?yàn)楹贾莺兔绹?guó)雙機(jī)房部署,存在跨機(jī)房同步的業(yè)務(wù)需求,實(shí)現(xiàn)方式主要是基于業(yè)務(wù) trigger 獲取增量變更。從 2010 年開始,業(yè)務(wù)逐步嘗試數(shù)據(jù)庫(kù)日志解析獲取增量變更進(jìn)行同步,由此衍生出了大量的數(shù)據(jù)庫(kù)增量訂閱和消費(fèi)業(yè)務(wù)。
基于日志增量訂閱和消費(fèi)的業(yè)務(wù)包括
- 數(shù)據(jù)庫(kù)鏡像
- 數(shù)據(jù)庫(kù)實(shí)時(shí)備份
- 索引構(gòu)建和實(shí)時(shí)維護(hù)(拆分異構(gòu)索引、倒排索引等)
- 業(yè)務(wù) cache 刷新
- 帶業(yè)務(wù)邏輯的增量數(shù)據(jù)處理
當(dāng)前的 canal 支持源端 MySQL 版本包括 5.1.x , 5.5.x , 5.6.x , 5.7.x , 8.0.x
排名第5的是nacos, star個(gè)數(shù) 25.686 , 主要開發(fā)語(yǔ)言java
Nacos /nɑ:k??s/ 是 Dynamic Naming and Configuration Service的首字母簡(jiǎn)稱,一個(gè)更易于構(gòu)建云原生應(yīng)用的動(dòng)態(tài)服務(wù)發(fā)現(xiàn)、配置管理和服務(wù)管理平臺(tái)。
Nacos 致力于幫助您發(fā)現(xiàn)、配置和管理微服務(wù)。Nacos 提供了一組簡(jiǎn)單易用的特性集,幫助您快速實(shí)現(xiàn)動(dòng)態(tài)服務(wù)發(fā)現(xiàn)、服務(wù)配置、服務(wù)元數(shù)據(jù)及流量管理。
Nacos 幫助您更敏捷和容易地構(gòu)建、交付和管理微服務(wù)平臺(tái)。 Nacos 是構(gòu)建以“服務(wù)”為中心的現(xiàn)代應(yīng)用架構(gòu) (例如微服務(wù)范式、云原生范式) 的服務(wù)基礎(chǔ)設(shè)施。
排名第4的是druid, star個(gè)數(shù)26,638 ,主要開發(fā)語(yǔ)言java
號(hào)稱Druid是Java語(yǔ)言中最好的數(shù)據(jù)庫(kù)連接池。Druid能夠提供強(qiáng)大的監(jiān)控和擴(kuò)展功能。他出來(lái)之后,dbcp,c3p0都失蹤了.
排名第3的是easyexcel , star個(gè)數(shù)27,044,主要開發(fā)語(yǔ)言java
號(hào)稱最方便的excel導(dǎo)入導(dǎo)出工具,用了這個(gè)之后,poi,jxl什么的全部都丟到垃圾桶了,用這個(gè)吧,因他十分強(qiáng)大,十分簡(jiǎn)單,十分有性能.
easyexcel重寫了poi對(duì)07版Excel的解析,一個(gè)3M的excel用POI sax解析依然需要100M左右內(nèi)存,改用easyexcel可以降低到幾M,并且再大的excel也不會(huì)出現(xiàn)內(nèi)存溢出;03版依賴POI的sax模式,在上層做了模型轉(zhuǎn)換的封裝,讓使用者更加簡(jiǎn)單方便
EasyExcel是一個(gè)基于Java的、快速、簡(jiǎn)潔、解決大文件內(nèi)存溢出的Excel處理工具。 他能讓你在不用考慮性能、內(nèi)存的等因素的情況下,快速完成Excel的讀、寫等功能。
排名第二的是p3c, star個(gè)數(shù)28,883, 主要開發(fā)語(yǔ)言kotlin和java ,最新版黃山版
P3C是Java代碼規(guī)約掃描工具。最新版本:黃山版(2022.2.3發(fā)布)
P3C旨在以工具的手段進(jìn)行代碼規(guī)約的落地,項(xiàng)目包含三部分:PMD規(guī)則實(shí)現(xiàn)、IntelliJ IDEA插件、Eclipse插件,幫助開發(fā)人員在工程研發(fā)的多個(gè)階段進(jìn)行代碼規(guī)約檢查,降低故障率、提升編碼效率和質(zhì)量。
排名第一的是arthas, star個(gè)數(shù)31925,主要開發(fā)語(yǔ)言java
Arthas (阿爾薩斯)是一款線上監(jiān)控診斷產(chǎn)品,通過(guò)全局視角實(shí)時(shí)查看應(yīng)用 load、內(nèi)存、gc、線程的狀態(tài)信息,并能在不修改應(yīng)用代碼的情況下,對(duì)業(yè)務(wù)問題進(jìn)行診斷,包括查看方法調(diào)用的出入?yún)?、異常,監(jiān)測(cè)方法執(zhí)行耗時(shí),類加載信息等,大大提升線上問題排查效率。
當(dāng)你遇到以下類似問題而束手無(wú)策時(shí),Arthas可以幫助你解決:
- 這個(gè)類從哪個(gè) jar 包加載的?為什么會(huì)報(bào)各種類相關(guān)的 Exception?
- 我改的代碼為什么沒有執(zhí)行到?難道是我沒 commit?分支搞錯(cuò)了?
- 遇到問題無(wú)法在線上 debug,難道只能通過(guò)加日志再重新發(fā)布嗎?
- 線上遇到某個(gè)用戶的數(shù)據(jù)處理有問題,但線上同樣無(wú)法 debug,線下無(wú)法重現(xiàn)!
- 是否有一個(gè)全局視角來(lái)查看系統(tǒng)的運(yùn)行狀況?
- 有什么辦法可以監(jiān)控到 JVM 的實(shí)時(shí)運(yùn)行狀態(tài)?
- 怎么快速定位應(yīng)用的熱點(diǎn),生成火焰圖?
- 怎樣直接從 JVM 內(nèi)查找某個(gè)類的實(shí)例?
阿里巴巴開源的軟件還有很多,其最大的優(yōu)勢(shì)在于,提供了全中文文檔,這對(duì)于國(guó)內(nèi)程序員來(lái)說(shuō),拿來(lái)就可以上手的輪子,怎么不愛呢?例如tengine強(qiáng)大如nginx. 以及weex開發(fā)app的框架.很多項(xiàng)目也停止維護(hù)了,但是這些讓這些代碼開源的精神是中國(guó)其他大廠無(wú)法企及的高度。
2023年3月14日