導(dǎo)讀:
開源展示了人類共同協(xié)作卿堂,成果分享的魅力概说,每一次技術(shù)發(fā)展都是站在巨人的肩膀上面殖,技術(shù)諸多創(chuàng)新和發(fā)展往往就是基于開源發(fā)展起來的履澳,沒有任何一家網(wǎng)絡(luò)公司可以不使用開源技術(shù)柱徙,僅靠自身技術(shù)而發(fā)展起來。阿里巴巴各個團隊都是發(fā)自內(nèi)心地將踩過的坑和總結(jié)的經(jīng)驗融入到開源項目中奇昙,供業(yè)界所有人使用护侮,希望幫助他人解決問題。
把阿里巴巴的一些重要的開源項目進行整理储耐,希望對大家有所幫助羊初。(以下項目排名不分先后)
前端
1.數(shù)據(jù)驅(qū)動的高交互可視化圖形語法 AntV - G2
G2 是一套基于可視化編碼的圖形語法,以數(shù)據(jù)驅(qū)動,具有高度的易用性和擴展性长赞,用戶無需關(guān)注各種繁瑣的實現(xiàn)細(xì)節(jié)晦攒,一條語句即可構(gòu)建出各種各樣的可交互的統(tǒng)計圖表。
同時得哆,G2 也是 AntV 最重要的組成脯颜,始于《The Grammar of Graphics》一書描述的視覺編碼語法系統(tǒng)(這也是 G2 項目命名的由來)。
項目地址:
2.企業(yè)級中后臺 UI 解決方案 Fusion Design
Fusion Design 是一種旨在提升設(shè)計與開發(fā)之間 UI 構(gòu)建效率的工作方式贩据。通過建設(shè)基于 DPL 模式的栋操,設(shè)計、前端之間的標(biāo)準(zhǔn)協(xié)議與工作流饱亮,來快速構(gòu)建符合業(yè)務(wù)訴求的 DPL矾芙,提升 DPL 的構(gòu)建效率和應(yīng)用效率,幫助業(yè)務(wù)快速實現(xiàn) UI 構(gòu)建近上。
項目地址:
3.設(shè)計語言 & 前端框架 Ant Design
Ant Design 是螞蟻金服開發(fā)和正在使用的一套企業(yè)級的前端設(shè)計語言和基于 React 的前端框架實現(xiàn)剔宪。它的特性:企業(yè)級金融產(chǎn)品的交互語言和視覺體系;豐富實用的 React UI 組件壹无;基于 React 的組件化開發(fā)模式葱绒;背靠 npm 生態(tài)圈;基于 webpack 的調(diào)試構(gòu)建方案斗锭,支持 ES6哈街。
地址:
https://github.com/ant-design/ant-design
4.基于 G2 封裝的 React 圖表庫 BizCharts
BizCharts 是一個基于 G2 封裝的 React 圖表庫,具有 G2拒迅、React 的全部優(yōu)點骚秦,可以讓用戶以組件的形式組合出無數(shù)種圖表;并且集成了大量的統(tǒng)計工具璧微,支持多種坐標(biāo)系繪制作箍,交互定制,動畫定制以及圖形定制等等前硫。相信 BizCharts 定能成為您的數(shù)據(jù)可視化項目的強力助手胞得。
地址:
https://github.com/alibaba/BizCharts
5.企業(yè)級 Node.js 框架 Egg
阿里開源的企業(yè)級 Node.js 框架。Egg.js 的插件機制有很高的可擴展性屹电,一個插件只做一件事阶剑。Egg.js 通過框架聚合這些插件,并根據(jù)自己的業(yè)務(wù)場景定制配置危号,這樣應(yīng)用的開發(fā)成本就變得很低牧愁。
地址:
6.基于 React 的前端框架 umi
umi 是可插拔的企業(yè)級 React 框架,類似 Next.js外莲。
地址:
7.前端構(gòu)建和工程化工具 Dawn
Dawn 取「黎明猪半、破曉」之意兔朦,原為「阿里云·業(yè)務(wù)運營團隊」內(nèi)部的前端構(gòu)建和工程化工具,現(xiàn)已完全開源磨确。它通過 pipeline 和 middleware 將開發(fā)過程抽象為相對固定的階段和有限的操作沽甥,簡化并統(tǒng)一了開發(fā)人員的日常構(gòu)建與開發(fā)相關(guān)的工作。
地址:
https://alibaba.github.io/dawn/
8.頁面邏輯原型 Ant UX
這是一套制作頁面邏輯的素材庫乏奥,當(dāng)你在產(chǎn)品設(shè)計初期摆舟,可以用它來繪制頁面與頁面之間的邏輯圖,幫助你了解產(chǎn)品架構(gòu)邓了,業(yè)務(wù)流程恨诱。
配合工具:
OmniGraffle ,Sketch
OmniGraffle 可以用來繪制圖表,流程圖驶悟,組織結(jié)構(gòu)圖以及插圖胡野,也可以用來組織頭腦中思考的信息材失,組織頭腦風(fēng)暴的結(jié)果痕鳍,繪制心智圖,作為樣式管理器龙巨,或設(shè)計網(wǎng)頁或PDF文檔的原型笼呆。
Sketch 是一個矢量設(shè)計軟件,可以幫助你快速投入UI設(shè)計當(dāng)中旨别。
地址:
9.跨容器的渲染引擎 Rax
Rax 是阿里開源的一個通用的 JavaScript 庫诗赌,主要有 React 兼容的 API 。 使用 React 的就應(yīng)該已經(jīng)知道如何使用 Rax秸弛。
地址:
https://alibaba.github.io/rax/
10.基于 WebGL 的 Javascript 3D 繪圖引擎 G3D
G3D 是阿里巴巴開源的一款基于 WebGL 的 javascript 3D 繪圖引擎铭若。與其他的 WebGL 3D 引擎相比,G3D 是更加「純粹」的渲染引擎递览,也就是說叼屠,它完全不依賴任何 DOM API,而是僅僅依賴一個 canvas 對象(或者類 canvas 對象)绞铃。該特性使得 G3D 不僅能夠運行在瀏覽器環(huán)境中镜雨,也能夠運行在一些非瀏覽器的 js 終端環(huán)境下(hybrid 環(huán)境),比如 GCanvas 環(huán)境(基于 Weex 或 ReactNative)儿捧。
地址:
https://alibaba.github.io/G3D/
11.跨平臺移動開發(fā)工具 Weex
Weex 是開源的跨平臺移動開發(fā)工具荚坞,能夠完美兼顧性能與動態(tài)性,讓移動開發(fā)者通過簡捷的前端語法寫出Native級別的性能體驗菲盾,并支持iOS、安卓、YunOS及Web等多端部署南捂。
地址:
https://github.com/apache/incubator-weex/
12.基于 Weex 的 UI 組件庫 Weex Ui
Weex Ui 是一個基于 Weex 的富交互魏颓、輕量級偷遗、高性能的 UI 組件庫。
地址:
https://github.com/alibaba/weex-ui
13.動效語言& React 框架動效解決方案 Ant Motion
Ant Motion 是從螞蟻金服的 Ant Design 中提煉出來的動效語言霹陡。它不僅僅是動效語言,同時也是一套 React 框架動效解決方案,提供了單項,組合動畫稿饰,以及整套解決方案,幫助開發(fā)者更容易的在項目中使用動效偿凭。
地址:
14.多頁面切換場景統(tǒng)一解決方案 UltraViewPager
UltraViewPager 是阿里開源的一個封裝多種特性的 ViewPager 霎烙,主要是為多頁面切換場景提供統(tǒng)一解決方案尝蠕。
地址:
https://github.com/alibaba/UltraViewPager
15.模塊化 UI 界面方案 Tangram UI
Tangram看彼,七巧板茁计,是天貓團隊開源的跨平臺模塊化 UI 界面方案男窟。
Tangram 不僅僅是一個 Native(iOS & Android)的界面開發(fā)框架,而是從日常工作中沉淀出的一套界面解決方案颤枪,涵蓋了 Native SDK汗捡、GUI操作臺、后端邏輯容器畏纲、組件庫機制的一整套方案扇住。
地址:
16.自動化測試解決方案 Macaca
Macaca是一套完整的自動化測試解決方案,支持移動端和PC端盗胀,支持Native, Hybrid, H5 等多種應(yīng)用類型艘蹋,并且提供客戶端工具和持續(xù)集成服務(wù)。
地址:
https://github.com/alibaba/macaca
17.基于 React 的中后臺應(yīng)用解決方案 飛冰 ICE
飛冰(ICE) 是一套基于 React 的中后臺應(yīng)用解決方案票灰,ICE 包含了一條從設(shè)計端到開發(fā)端的完整鏈路女阀,幫助用戶快速搭建屬于自己的中后臺應(yīng)用。
面向設(shè)計者端屑迂,ICE 提供了 ICE Design 設(shè)計語言浸策,來給 UI 界面提供專業(yè)的視覺指導(dǎo)。面向開發(fā)者端屈糊,ICE 提供了 Iceworks 工具的榛,這是一個圖形化界面的開發(fā)平臺,它承載了 ICE 的物料體系和開發(fā)體驗逻锐。
地址:
https://alibaba.github.io/ice/
18.HTML5 互動游戲引擎 Hilo
Hilo 是阿里巴巴集團開發(fā)的一款HTML5跨終端游戲解決方案夫晌,ta可以幫助開發(fā)者快速創(chuàng)建HTML5游戲雕薪。
地址:
https://github.com/hiloteam/Hilo
19.JavaScript 模板引擎 Velocity.js
Velocity.js 是velocity模板語法的javascript實現(xiàn)。Velocity 是基于Java的模板引擎晓淀,廣泛應(yīng)用在阿里集 體各個子公司所袁。Velocity模板適用于大量模板使用的場景,支持復(fù)雜的邏輯運算凶掰,包含 基本數(shù)據(jù)類型燥爷、變量賦值和函數(shù)等功能。Velocity.js 支持 Node.js 和瀏覽器環(huán)境懦窘。
地址:
https://github.com/shepherdwind/velocity.js
20. 非侵入式運行期 AOP 框架 Dexposed
Dexposed 是阿里巴巴無線事業(yè)部第一個重量級 Andorid 開源軟件前翎,基于 ROOT 社區(qū)著名開源項目 Xposed 改造剝離了 ROOT 部分,演化為服務(wù)于所在應(yīng)用自身的 AOP 框架畅涂。它支撐了阿里大部分 App 的在線分鐘級客戶端 bugfix 和線上調(diào)試能力港华。
地址:
https://github.com/alibaba/dexposed
21. 自動化測試解決方案 UI Recorder
UI Recorder 是一款零成本的整體自動化測試解決方案,一次自測等于多次測試午衰,測一個瀏覽器等于測多個瀏覽器立宜!
地址:
https://github.com/alibaba/uirecorder
22. Android 應(yīng)用熱修復(fù)工具 AndFix
AndFix 是阿里巴巴開源的 Android 應(yīng)用熱修復(fù)工具,幫助 Anroid 開發(fā)者修復(fù)應(yīng)用的線上問題臊岸。Andfix 是 "Android hot-fix" 的縮寫橙数。
地址:
https://github.com/alibaba/AndFix
23. 淘寶 React 框架 React Web
淘寶前端團隊開源項目React Web,通過與React Native一致的API構(gòu)建Web應(yīng)用帅戒。
地址:
https://github.com/taobaofed/react-web灯帮、
24.基于 Node.js 的自動化持續(xù)集成 Reliable
Reliable 是分布式架構(gòu)的持續(xù)集成系統(tǒng),由Macaca 團隊的成員開發(fā)蜘澜。適用于集成構(gòu)建施流、集成構(gòu)建等場景响疚。她是典型的主從結(jié)構(gòu)鄙信,分為reliable-master 與 reliable-slave 兩部分。
地址:
https://github.com/reliablejs/reliable-master
25. 模擬數(shù)據(jù)生成器 Mock.js
Mock.js 是一款模擬數(shù)據(jù)生成器忿晕,旨在幫助前端攻城師獨立于后端進行開發(fā)装诡,幫助編寫單元測試。提供了以下模擬功能:根據(jù)數(shù)據(jù)模板生成模擬數(shù)據(jù)践盼,模擬 Ajax 請求鸦采,生成并返回模擬數(shù)據(jù),基于 HTML 模板生成模擬數(shù)據(jù)咕幻。
地址:
https://github.com/nuysoft/Mock
26. React 應(yīng)用的服務(wù)器渲染框架 Beidou
Beidou(北斗) 是 NodeJS & React 同構(gòu)框架渔伯,基于Egg.js開發(fā)。
地址:
https://github.com/alibaba/beidou
Java
1.分布式應(yīng)用服務(wù)開發(fā)的一站式解決方案 Spring Cloud Alibaba
Spring Cloud Alibaba 致力于提供分布式應(yīng)用服務(wù)開發(fā)的一站式解決方案肄程。此項目包含開發(fā)分布式應(yīng)用服務(wù)的必需組件锣吼,方便開發(fā)者通過 Spring Cloud 編程模型輕松使用這些組件來開發(fā)分布式應(yīng)用服務(wù)选浑。
依托 Spring Cloud Alibaba,您只需要添加一些注解和少量配置玄叠,就可以將 Spring Cloud 應(yīng)用接入阿里分布式應(yīng)用解決方案古徒,通過阿里中間件來迅速搭建分布式應(yīng)用系統(tǒng)。
地址:
https://github.com/spring-cloud-incubator/spring-cloud-alibaba
2. JDBC 連接池读恃、監(jiān)控組件 Druid
Druid是一個 JDBC 組件隧膘。
● 監(jiān)控數(shù)據(jù)庫訪問性能。
● 提供了一個高效寺惫、功能強大疹吃、可擴展性好的數(shù)據(jù)庫連接池。
● 數(shù)據(jù)庫密碼加密西雀。
● SQL執(zhí)行日志互墓。
地址:
https://github.com/alibaba/druid
3. Java 的 JSON 處理器 fastjson
fastjson 是一個性能很好的 Java 語言實現(xiàn)的 JSON 解析器和生成器,來自阿里巴巴的工程師開發(fā)蒋搜。
主要特點:快速FAST (比其它任何基于Java的解析器和生成器更快篡撵,包括jackson);強大(支持普通JDK類包括任意Java Bean Class豆挽、Collection育谬、Map、Date或enum)帮哈;零依賴(沒有依賴其它任何類庫除了JDK)膛檀。
地址:
https://github.com/alibaba/fastjson
4. 服務(wù)框架 Dubbo
Apache Dubbo (incubating) |是阿里巴巴的一款高性能、輕量級的開源Java RPC框架娘侍,它提供了三大核心能力:面向接口的遠程方法調(diào)用咖刃,智能容錯和負(fù)載均衡,以及服務(wù)自動注冊和發(fā)現(xiàn)憾筏。
地址:
https://github.com/alibaba/dubbo
5. 企業(yè)級流式計算引擎 JStorm
JStorm 是參考 Apache Storm 實現(xiàn)的實時流式計算框架嚎杨,在網(wǎng)絡(luò)IO、線程模型氧腰、資源調(diào)度枫浙、可用性及穩(wěn)定性上做了持續(xù)改進,已被越來越多企業(yè)使用古拴。JStorm 可以看作是 storm 的 java 增強版本箩帚,除了內(nèi)核用純java實現(xiàn)外,還包括了thrift黄痪、python紧帕、facet ui。從架構(gòu)上看桅打,其本質(zhì)是一個基于 zk 的分布式調(diào)度系統(tǒng)是嗜。
地址:
https://github.com/alibaba/jstorm
6. apns4j
apns4j 是 Apple Push Notification Service 的 Java 實現(xiàn)轻纪!
地址:
https://github.com/teaey/apns4j
7. 分布式數(shù)據(jù)層 TDDL
TDDL 是一個基于集中式配置的 jdbc datasource實現(xiàn),具有主備叠纷,讀寫分離刻帚,動態(tài)數(shù)據(jù)庫配置等功能。
地址:
https://github.com/alibaba/tb_tddl
8. 輕量級分布式數(shù)據(jù)訪問層 CobarClient
Cobar Client是一個輕量級分布式數(shù)據(jù)訪問層(DAL)基于iBatis(已更名為MyBatis)和Spring框架實現(xiàn)涩嚣。
地址:
https://github.com/alibaba/cobarclient
9. 淘寶定制 JVM:TaobaoJVM
TaobaoJVM 基于 OpenJDK HotSpot VM崇众,是國內(nèi)第一個優(yōu)化、定制且開源的服務(wù)器版Java虛擬機航厚。目前已經(jīng)在淘寶顷歌、天貓上線,全部替換了Oracle官方JVM版本幔睬,在性能眯漩,功能上都初步體現(xiàn)了它的價值。
地址:
10. Java 圖片處理類庫 SimpleImage
SimpleImage是阿里巴巴的一個Java圖片處理的類庫麻顶,可以實現(xiàn)圖片縮略赦抖、水印等處理。
地址:
https://github.com/alibaba/simpleimage
11. redis 的 java 客戶端 Tedis
Tedis 是另一個 redis 的 java 客戶端辅肾。Tedis 的目標(biāo)是打造一個可在生產(chǎn)環(huán)境直接使用的高可用 Redis 解決方案队萤。
地址:
https://github.com/justified/tedis
12.開源 Java 診斷工具 Arthas
Arthas(阿爾薩斯)是阿里巴巴開源的 Java 診斷工具,深受開發(fā)者喜愛矫钓。
Arthas 采用命令行交互模式要尔,同時提供豐富的 Tab 自動補全功能,進一步方便進行問題的定位和診斷新娜。
地址:
https://alibaba.github.io/arthas/
13.動態(tài)服務(wù)發(fā)現(xiàn)赵辕、配置和服務(wù)管理平臺 Nacos
Nacos 致力于幫助您發(fā)現(xiàn)、配置和管理微服務(wù)概龄。Nacos 提供了一組簡單易用的特性集还惠,幫助您實現(xiàn)動態(tài)服務(wù)發(fā)現(xiàn)、服務(wù)配置管理旁钧、服務(wù)及流量管理吸重。
Nacos 幫助您更敏捷和容易地構(gòu)建、交付和管理微服務(wù)平臺歪今。 Nacos 是構(gòu)建以“服務(wù)”為中心的現(xiàn)代應(yīng)用架構(gòu)(例如微服務(wù)范式、云原生范式)的服務(wù)基礎(chǔ)設(shè)施颜矿。
地址:
14.Java 解析 Excel 工具 easyexcel
Java 解析寄猩、生成 Excel 比較有名的框架有 Apache poi、jxl 骑疆。但他們都存在一個嚴(yán)重的問題就是非常的耗內(nèi)存田篇,poi 有一套 SAX 模式的 API 可以一定程度的解決一些內(nèi)存溢出的問題替废,但 POI 還是有一些缺陷,比如 07 版 Excel 解壓縮以及解壓后存儲都是在內(nèi)存中完成的泊柬,內(nèi)存消耗依然很大椎镣。easyexcel 重寫了 poi 對 07 版 Excel 的解析,能夠原本一個 3M 的 excel 用 POI sax 依然需要 100M 左右內(nèi)存降低到 KB 級別兽赁,并且再大的 excel 不會出現(xiàn)內(nèi)存溢出状答,03 版依賴 POI 的 sax 模式。在上層做了模型轉(zhuǎn)換的封裝刀崖,讓使用者更加簡單方便惊科。
地址:
https://github.com/alibaba/easyexcel
15.高可用流量管理框架 Sentinel
Sentinel 是面向微服務(wù)的輕量級流量控制框架,從流量控制亮钦、熔斷降級馆截、系統(tǒng)負(fù)載保護等多個維度保護服務(wù)的穩(wěn)定性。
只要通過 Sentinel API 定義的代碼蜂莉,就是資源蜡娶,能夠被 Sentinel 保護起來。大部分情況下映穗,可以使用方法簽名翎蹈,URL,甚至服務(wù)名稱作為資源名來標(biāo)示資源男公。
地址:
https://github.com/alibaba/Sentinel
16.基于多維度 Metrics 的系統(tǒng)度量和監(jiān)控中間件 SOFALookout
Lookout 是一個利用多維度的 metrics 對目標(biāo)系統(tǒng)進行度量和監(jiān)控的項目荤堪。Lookout 的多維度 metrics 參考 Metrics 2.0 標(biāo)準(zhǔn)。Lookout 項目分為客戶端部分與服務(wù)器端部分枢赔。
客戶端是一個 Java 的類庫澄阳,可以將它植入您的應(yīng)用代碼中采集 metrics 信息,客戶端更多詳情踏拜。
服務(wù)端代碼部分碎赢,將于下一版本提供。通過 LOOKOUT 的服務(wù)速梗,可以對 metrics 數(shù)據(jù)進行收集肮塞、加工、存儲和查詢等處理姻锁,另外結(jié)合 grafana枕赵,可做數(shù)據(jù)可視化展示。
地址:
https://github.com/alipay/sofa-lookout
17.基于 Spring Boot 的研發(fā)框架 SOFABoot
SOFABoot 是螞蟻金服開源的基于 Spring Boot 的研發(fā)框架位隶,它在 Spring Boot 的基礎(chǔ)上拷窜,提供了諸如 Readiness Check,類隔離,日志空間隔離等等能力篮昧。在增強了 Spring Boot 的同時赋荆,SOFABoot 提供了讓用戶可以在 Spring Boot 中非常方便地使用 SOFAStack 相關(guān)中間件的能力。
地址:
https://github.com/alipay/sofa-boot
18.輕量級 Java 類隔離容器 SOFAArk
SOFAArk 是一款基于 Java 實現(xiàn)的輕量級類隔離容器懊昨,由螞蟻金服公司開源貢獻窄潭;主要為應(yīng)用程序提供類隔離和依賴包隔離的能力;基于 Fat Jar 技術(shù)酵颁,應(yīng)用可以被打包成一個自包含可運行的 Fat Jar嫉你,應(yīng)用既可以是簡單的單模塊 Java 應(yīng)用也可以是 Spring Boot 應(yīng)用〔囊澹可訪問網(wǎng)址進入快速開始并獲取更多詳細(xì)信息均抽。
地址:
https://alipay.github.io/sofastack.github.io/
19.分布式鏈路追蹤中間件 SOFATracer
SOFATracer 是一個用于分布式系統(tǒng)調(diào)用跟蹤的組件,通過統(tǒng)一的 traceId 將調(diào)用鏈路中的各種網(wǎng)絡(luò)調(diào)用情況以日志的方式記錄下來其掂,以達到透視化網(wǎng)絡(luò)調(diào)用的目的油挥。這些日志可用于故障的快速發(fā)現(xiàn),服務(wù)治理等款熬。
地址:
https://github.com/alipay/sofa-tracer
20.高性能 Java RPC 框架 SOFARPC
SOFARPC 是一個高可擴展性深寥、高性能、生產(chǎn)級的 Java RPC 框架贤牛。在螞蟻金服 SOFARPC 已經(jīng)經(jīng)歷了十多年及五代版本的發(fā)展惋鹅。SOFARPC 致力于簡化應(yīng)用之間的 RPC 調(diào)用,為應(yīng)用提供方便透明殉簸、穩(wěn)定高效的點對點遠程服務(wù)調(diào)用方案闰集。為了用戶和開發(fā)者方便的進行功能擴展,SOFARPC 提供了豐富的模型抽象和可擴展接口般卑,包括過濾器武鲁、路由、負(fù)載均衡等等蝠检。同時圍繞 SOFARPC 框架及其周邊組件提供豐富的微服務(wù)治理方案沐鼠。
地址:
https://github.com/alipay/sofa-rpc
21.基于 Netty 的網(wǎng)絡(luò)通信框架 SOFABolt
SOFABolt 是螞蟻金融服務(wù)集團開發(fā)的一套基于 Netty 實現(xiàn)的網(wǎng)絡(luò)通信框架。
為了讓 Java 程序員能將更多的精力放在基于網(wǎng)絡(luò)通信的業(yè)務(wù)邏輯實現(xiàn)上叹谁,而不是過多的糾結(jié)于網(wǎng)絡(luò)底層 NIO 的實現(xiàn)以及處理難以調(diào)試的網(wǎng)絡(luò)問題饲梭,Netty 應(yīng)運而生。
為了讓中間件開發(fā)者能將更多的精力放在產(chǎn)品功能特性實現(xiàn)上焰檩,而不是重復(fù)地一遍遍制造通信框架的輪子憔涉,SOFABolt 應(yīng)運而生。
地址:
https://github.com/alipay/sofa-bolt
22.動態(tài)非侵入 AOP 解決方案 JVM-Sandbox
JVM-Sandbox锅尘,JVM 沙箱容器监氢,一種基于 JVM 的非侵入式運行期 AOP 解決方案布蔗。
地址:
https://github.com/alibaba/jvm-sandbox
23.面向云的分布式消息領(lǐng)域標(biāo)準(zhǔn) OpenMessaging
OpenMessaging 是由阿里巴巴發(fā)起藤违,與雅虎浪腐、滴滴出行匿级、Streamlio 公司共同參與創(chuàng)立膏燃,旨在創(chuàng)立廠商無關(guān)、平臺無關(guān)的分布式消息及流處理領(lǐng)域的應(yīng)用開發(fā)標(biāo)準(zhǔn)奶躯。
地址:
https://github.com/openmessaging/openmessaging-java
24.P2P 文件分發(fā)系統(tǒng) Dragonfly
Dragonfly(蜻蜓)是阿里自研的 P2P 文件分發(fā)系統(tǒng)璧榄,用于解決大規(guī)模文件分發(fā)場景下分發(fā)耗時特漩、成功率低、帶寬浪費等難題骨杂。大幅提升發(fā)布部署涂身、數(shù)據(jù)預(yù)熱、大規(guī)模容器鏡像分發(fā)等業(yè)務(wù)能力搓蚪。
開源版的 Dragonfly 可用于 P2P 文件分發(fā)蛤售、容器鏡像分發(fā)、局部限速妒潭、磁盤容量預(yù)檢等悴能。它支持多種容器技術(shù),對容器本身無需做任何改造雳灾,鏡像分發(fā)比 natvie 方式提速可高達 57 倍漠酿,Registry 網(wǎng)絡(luò)出流量降低99.5%以上。
地址:
https://github.com/alibaba/Dragonfly
25.LayoutManager 定制化布局方案 vlayout
VirtualLayout是一個針對RecyclerView的LayoutManager擴展, 主要提供一整套布局方案和布局間的組件復(fù)用的問題谎亩。
地址:
https://github.com/alibaba/vlayout
26.Java 代碼規(guī)約掃描插件 P3C
項目包含三部分:PMD 實現(xiàn)炒嘲、IntelliJ IDEA 插件、Eclipse 插件
地址:
https://github.com/alibaba/p3c
27.Android 容器化框架 Atlas
Atlas 是由阿里巴巴移動團隊自研的手機淘寶安卓客戶端容器化框架匈庭,以容器化思路解決大規(guī)模團隊協(xié)作問題夫凸,實現(xiàn)并行開發(fā)、快速迭代和動態(tài)部署嚎花,適用于 Android 4.x 以上系統(tǒng)版本的大小型 App 開發(fā)寸痢。
地址:
28.規(guī)則引擎:QLExpress
QlExpress腳本語言解析工具誕生于2010年,是玄難大師根據(jù)當(dāng)時匯金的業(yè)務(wù)需要開始編寫紊选。該項目是由阿里的電商業(yè)務(wù)規(guī)則啼止、表達式(布爾組合)、特殊數(shù)學(xué)公式計算(高精度)兵罢、語法分析献烦、腳本二次定制等強需求而設(shè)計的一門動態(tài)腳本引擎解析工具。
QlExpress經(jīng)過40多個小版本的迭代卖词,性能和功能更加趨于穩(wěn)定巩那,被更多的團隊接受和認(rèn)可吏夯,在雙11洪流高峰、復(fù)雜規(guī)則業(yè)務(wù)配置平臺等場景下也得到更好的實戰(zhàn)考驗即横。
地址:
https://github.com/alibaba/QLExpress
數(shù)據(jù)庫
1. 開源數(shù)據(jù)庫 AliSQL
AliSQL 是基于 MySQL 官方版本的一個分支噪生,由阿里云數(shù)據(jù)庫團隊維護,目前也應(yīng)用于阿里巴巴集團業(yè)務(wù)以及阿里云數(shù)據(jù)庫服務(wù)东囚。該版本在社區(qū)版的基礎(chǔ)上做了大量的性能與功能的優(yōu)化改進跺嗽。尤其適合電商、云計算以及金融等行業(yè)環(huán)境页藻。
地址:
https://github.com/alibaba/AliSQL
2. 分布式數(shù)據(jù)庫 OceanBase
OceanBase是一個支持海量數(shù)據(jù)的高性能分布式數(shù)據(jù)庫系統(tǒng)桨嫁,實現(xiàn)了數(shù)千億條記錄、數(shù)百TB數(shù)據(jù)上的跨行跨表事務(wù)份帐,由淘寶核心系統(tǒng)研發(fā)部璃吧、運維、DBA废境、廣告畜挨、應(yīng)用研發(fā)等部門共同完成。
地址:
https://github.com/alibaba/oceanbase
3. 分布式數(shù)據(jù)庫同步系統(tǒng) otter
otter 基于數(shù)據(jù)庫增量日志解析彬坏,準(zhǔn)實時同步到本機房或異地機房的mysql/oracle數(shù)據(jù)庫. 一個分布式數(shù)據(jù)庫同步系統(tǒng)朦促。
地址:
https://github.com/alibaba/otter
4. Oracle 數(shù)據(jù)遷移同步工具 yugong
yugong 是阿里巴巴推出的去 Oracle 數(shù)據(jù)遷移同步工具(全量 + 增量,目標(biāo)支持 MySQL/DRDS)。
地址:
https://github.com/alibaba/yugong
5. 分布式 SQL 引擎 Lealone
Lealone 為 HBase 提供一個分布式SQL引擎栓始,嘗試將BigTable(HBase)和 RDBMS (H2數(shù)據(jù)庫) 結(jié)合的項目务冕。
地址:
https://github.com/lealone/Lealone
6. 關(guān)系型數(shù)據(jù)的分布式處理系統(tǒng) Cobar
Cobar 是關(guān)系型數(shù)據(jù)的分布式處理系統(tǒng),它可以在分布式的環(huán)境下像傳統(tǒng)數(shù)據(jù)庫一樣為您提供海量數(shù)據(jù)服務(wù)幻赚。以下是快速啟動場景:
地址:
https://github.com/alibaba/cobar
7. 分布式關(guān)系數(shù)據(jù)庫 Alibaba Wasp
Wasp 是類Google MegaStore & F1的分布式關(guān)系數(shù)據(jù)庫禀忆。
地址:
https://github.com/alibaba/wasp
系統(tǒng)
1. 分布式文件系統(tǒng) FastDFS
FastDFS 是一個開源的分布式文件系統(tǒng),她對文件進行管理落恼,功能包括:文件存儲箩退、文件同步、文件訪問(文件上傳佳谦、文件下載)等戴涝,解決了大容量存儲和負(fù)載均衡的問題。特別適合以文件為載體的在線服務(wù)钻蔑,如相冊網(wǎng)站啥刻、視頻網(wǎng)站等等。
地址:
https://github.com/happyfish100/fastdfs
2. 消息中間件 Apache RocketMQ
RocketMQ 是一款分布式咪笑、隊列模型的消息中間件可帽,具有以下特點:
● 能夠保證嚴(yán)格的消息順序
● 提供豐富的消息拉取模式
● 高效的訂閱者水平擴展能力
● 實時的消息訂閱機制
● 億級消息堆積能力
地址:
https://github.com/apache/rocketmq/
3. 分布式 key/value 存儲系統(tǒng) Tair
Tair是一個Key/Value結(jié)構(gòu)數(shù)據(jù)的解決方案,它默認(rèn)支持基于內(nèi)存和文件的兩種存儲方式窗怒,分別和我們通常所說的緩存和持久化存儲對應(yīng)映跟。
地址:
https://github.com/alibaba/tair
4. 系統(tǒng)信息采集和監(jiān)控工具 Tsar
Tsar是淘寶的采集工具蓄拣,主要用來收集服務(wù)器的系統(tǒng)信息(如cpu,io努隙,mem球恤,tcp等)以及應(yīng)用數(shù)據(jù)(如squid haproxy nginx等),tsar支持實時查看和歷史查看剃法,方便了解應(yīng)用和服務(wù)器的信息!
地址:
https://github.com/alibaba/tsar
5. 分布式消息中間件 Metamorphosis
Metamorphosis (MetaQ) 是一個高性能碎捺、高可用路鹰、可擴展的分布式消息中間件贷洲,類似于LinkedIn的Kafka,具有消息存儲順序?qū)懡⑼掏铝看蠛椭С直镜睾蚗A事務(wù)等特性优构,適用于大吞吐量、順序消息雁竞、廣播和日志數(shù)據(jù)傳輸?shù)葓鼍啊?/p>
地址:
https://github.com/killme2008/Metamorphosis
6. 淘寶Web服務(wù)器 Tengine
Tengine是由淘寶網(wǎng)發(fā)起的Web服務(wù)器項目钦椭。它在Nginx的基礎(chǔ)上,針對大訪問量網(wǎng)站的需求碑诉,添加了很多高級功能和特性彪腔。Tengine的性能和穩(wěn)定性已經(jīng)在大型的網(wǎng)站如淘寶網(wǎng),天貓商城等得到了很好的檢驗进栽。它的最終目標(biāo)是打造一個高效德挣、穩(wěn)定、安全快毛、易用的Web平臺格嗅。
地址:
https://github.com/alibaba/tengine
7. 分布式文件系統(tǒng) TFS
TFS(Taobao FileSystem)是一個高可擴展、高可用唠帝、高性能屯掖、面向互聯(lián)網(wǎng)服務(wù)的分布式文件系統(tǒng),其設(shè)計目標(biāo)是支持海量的非結(jié)構(gòu)化數(shù)據(jù)襟衰。
地址:
https://github.com/alibaba/tfs
8. 異步任務(wù)處理系統(tǒng) TBSchedule
tbschedule 是一個簡潔的分布式任務(wù)調(diào)度引擎贴铜,目的是讓一種批量任務(wù)或者不斷變化的任務(wù),能夠被動態(tài)的分配到多個主機的JVM中瀑晒,不同的線程組中并行執(zhí)行绍坝。所有的任務(wù)能夠被不重復(fù),不遺漏的快速處理瑰妄。
地址:
https://github.com/taobao/TBSchedule
9. 容器引擎 Pouch
Pouch 是一款輕量級的容器引擎陷嘴,擁有快速高效、可移植性高间坐、資源占用少等特性灾挨,主要幫助阿里更快的做到內(nèi)部業(yè)務(wù)的交付邑退,同時提高超大規(guī)模下數(shù)據(jù)中心的物理資源利用率。
地址:
https://github.com/alibaba/pouch
10. 在線分析查詢系統(tǒng) mdrill
mdrill是一個分布式的在線分析查詢系統(tǒng)劳澄,基于hadoop,lucene,solr,jstorm等開源系統(tǒng)作為實現(xiàn)地技,基于SQL的查詢語法。 mdrill是一個能夠?qū)Υ罅繑?shù)據(jù)進行分布式處理的軟件框架秒拔。mdrill是快速的高性能的莫矗,他的底層因使用了索引、列式存儲砂缩、以及內(nèi)存cache等技 術(shù)作谚,使得數(shù)據(jù)掃描的速度大為增加。mdrill是分布式的庵芭,它以并行的方式工作妹懒,通過并行處理加快處理速度。