【1024】阿里开源项目汇总
程序員的語(yǔ)言是代碼,程序員的交流工具就是開(kāi)源軟件。
通過(guò)開(kāi)源軟件,程序員不僅貢獻(xiàn)了改變世界的工具,還向同行展示了自己的作品,期望得到交流和反饋,
進(jìn)一步提高軟件的功能和質(zhì)量。開(kāi)源已經(jīng)成為程序員文化的一部分。
作為軟件大廠,阿里巴巴集團(tuán)為開(kāi)源社區(qū)貢獻(xiàn)了大量軟件,無(wú)償提供包含了無(wú)數(shù)工程師智慧和汗水的海量代碼。在今天這個(gè) 1024 程序員節(jié)的特殊日子,語(yǔ)雀為大家整理了近十年來(lái)阿里巴巴集團(tuán)的開(kāi)源軟件,希望讓大家感受程序員對(duì)世界的貢獻(xiàn)。
目錄
- 一、前端
- 二、Java
- 三、數(shù)據(jù)庫(kù)
- 四、系統(tǒng)
- 五、教程
一、前端
設(shè)計(jì)語(yǔ)言 & 前端框架 Ant Design
[
](http://ant.design/)
Ant Design 是螞蟻金服開(kāi)發(fā)和正在使用的一套企業(yè)級(jí)的前端設(shè)計(jì)語(yǔ)言和基于 React 的前端框架實(shí)現(xiàn)。它的特性:企業(yè)級(jí)金融產(chǎn)品的交互語(yǔ)言和視覺(jué)體系;豐富實(shí)用的 React UI 組件;基于 React 的組件化開(kāi)發(fā)模式;背靠 npm 生態(tài)圈;基于 webpack 的調(diào)試構(gòu)建方案,支持 ES6。
地址:https://github.com/ant-design/ant-design
可視化語(yǔ)法庫(kù) <span data-type="color" style="color:rgba(0, 0, 0, 0.85)"><span data-type="background" style="background-color:rgb(248, 250, 254)">G2</span></span>
[
](https://antv.alipay.com/zh-cn...
G2 是一套基于可視化編碼的圖形語(yǔ)法,以數(shù)據(jù)驅(qū)動(dòng),具有高度的易用性和擴(kuò)展性,用戶無(wú)需關(guān)注各種繁瑣的實(shí)現(xiàn)細(xì)節(jié),一條語(yǔ)句即可構(gòu)建出各種各樣的可交互的統(tǒng)計(jì)圖表。</span></span>
地址:https://github.com/antvis/g2
可視化圖表庫(kù) BizCharts
BizCharts 是基于?G2?的 React 圖表庫(kù),歷經(jīng)阿里兩年打磨,覆蓋數(shù)十個(gè)產(chǎn)品。
地址:https://github.com/alibaba/BizCharts
Node 應(yīng)用框架 Egg
[
](https://raw.githubusercontent...
egg 是為<span data-type="color" style="color:rgb(36, 41, 46)"><span data-type="background" style="background-color:rgb(255, 255, 255)">企業(yè)級(jí)框架和應(yīng)用而生的 Web 框架,使用 Node.js。</span></span>
地址:https://github.com/eggjs/egg
基于 React 的前端框架 umi
umi 是可插拔的企業(yè)級(jí) React 框架,類似 Next.js。
地址:https://github.com/umijs/umi
通用渲染引擎 Rax
[
](https://alibaba.github.io/rax)
Rax 是阿里開(kāi)源的一個(gè)通用的 JavaScript 庫(kù),主要有 React 兼容的 API 。 使用 React 的就應(yīng)該已經(jīng)知道如何使用 Rax。特性:快速:快速的虛擬 DOM;微型:min + gzip 之后僅 8.0kb;通用:跨瀏覽器、Weex 和 Node.js。
地址:https://github.com/alibaba/rax
跨平臺(tái)移動(dòng)開(kāi)發(fā)工具 Weex
[
](https://weex.apache.org/)
Weex 是開(kāi)源的跨平臺(tái)移動(dòng)開(kāi)發(fā)工具,能夠完美兼顧性能與動(dòng)態(tài)性,讓移動(dòng)開(kāi)發(fā)者通過(guò)簡(jiǎn)捷的前端語(yǔ)法寫出Native級(jí)別的性能體驗(yàn),并支持iOS、安卓、YunOS及Web等多端部署。
地址:https://github.com/apache/incubator-weex/
自動(dòng)化測(cè)試解決方案 Macaca
[
](https://macacajs.github.io/)
Macaca是一套完整的自動(dòng)化測(cè)試解決方案,支持移動(dòng)端和PC端,支持Native, Hybrid, H5 等多種應(yīng)用類型,并且提供客戶端工具和持續(xù)集成服務(wù)。
地址:https://github.com/alibaba/macaca
前端物料庫(kù) ice
[
](https://alibaba.github.io/ice)
ice 是前端的海量可復(fù)用物料庫(kù),配套桌面工具極速構(gòu)建前端應(yīng)用,大幅提升開(kāi)發(fā)效率。
地址:https://github.com/alibaba/ice
HTML5 互動(dòng)游戲引擎 Hilo
Hilo 是阿里巴巴集團(tuán)開(kāi)發(fā)的一款HTML5跨終端游戲解決方案,ta可以幫助開(kāi)發(fā)者快速創(chuàng)建 HTML5 游戲。
地址:https://github.com/hiloteam/Hilo
模塊加載框架 SeaJS
Sea.JS 是一個(gè)遵循 CommonJS 規(guī)范的模塊加載框架,可用來(lái)輕松愉悅地加載任意 JavaScript 模塊。
SeaJS 支持的標(biāo)準(zhǔn)模塊遵循 Modules/Wrappings 規(guī)范的 define 形式,可運(yùn)行于 Web 瀏覽器以及 node.JS 等環(huán)境中。
地址:https://github.com/seajs/seajs
JavaScript 模板引擎 Velocity.js
Velocity.js 是velocity模板語(yǔ)法的javascript實(shí)現(xiàn)。Velocity 是基于Java的模板引擎,廣泛應(yīng)用在阿里集 體各個(gè)子公司。Velocity模板適用于大量模板使用的場(chǎng)景,支持復(fù)雜的邏輯運(yùn)算,包含 基本數(shù)據(jù)類型、變量賦值和函數(shù)等功能。Velocity.js 支持 Node.js 和瀏覽器環(huán)境。
地址:https://github.com/shepherdwind/velocity.js
非侵入式運(yùn)行期 AOP 框架 Dexposed
Dexposed 是阿里巴巴無(wú)線事業(yè)部第一個(gè)重量級(jí) Andorid 開(kāi)源軟件,基于 ROOT 社區(qū)著名開(kāi)源項(xiàng)目 Xposed 改造剝離了 ROOT 部分,演化為服務(wù)于所在應(yīng)用自身的 AOP 框架。它支撐了阿里大部分 App 的在線分鐘級(jí)客戶端 bugfix 和線上調(diào)試能力。
地址:https://github.com/alibaba/dexposed
自動(dòng)化測(cè)試解決方案 UI Recorder
[
](https://camo.githubuserconten...
UI Recorder 是一款零成本的整體自動(dòng)化測(cè)試解決方案,一次自測(cè)等于多次測(cè)試,測(cè)一個(gè)瀏覽器等于測(cè)多個(gè)瀏覽器!
地址:https://github.com/alibaba/uirecorder
Android 應(yīng)用熱修復(fù)工具 AndFix
AndFix 是阿里巴巴開(kāi)源的 Android 應(yīng)用熱修復(fù)工具,幫助 Anroid 開(kāi)發(fā)者修復(fù)應(yīng)用的線上問(wèn)題。Andfix 是 "Android hot-fix" 的縮寫。
地址:https://github.com/alibaba/AndFix
淘寶 React 框架 React Web
[
](https://cloud.githubuserconte...
淘寶前端團(tuán)隊(duì)開(kāi)源項(xiàng)目React Web,通過(guò)與React Native一致的API構(gòu)建Web應(yīng)用。
地址:https://github.com/taobaofed/react-web
基于 Node.js 的自動(dòng)化持續(xù)集成 Reliable
Reliable 是分布式架構(gòu)的持續(xù)集成系統(tǒng),由Macaca 團(tuán)隊(duì)的成員開(kāi)發(fā)。適用于集成構(gòu)建、集成構(gòu)建等場(chǎng)景。她是典型的主從結(jié)構(gòu),分為reliable-master 與 reliable-slave 兩部分。
地址:https://github.com/reliablejs/reliable-master
Web 常用 UI 庫(kù) kissy
issy 是淘寶一個(gè)開(kāi)源的 JavaScript 庫(kù),包含的組件有:日歷、圖片放大鏡、卡片切換、彈出窗口、輸入建議等。
地址:https://github.com/kissyteam/kissy
模擬數(shù)據(jù)生成器 Mock.js
Mock.js 是一款模擬數(shù)據(jù)生成器,旨在幫助前端攻城師獨(dú)立于后端進(jìn)行開(kāi)發(fā),幫助編寫單元測(cè)試。提供了以下模擬功能:根據(jù)數(shù)據(jù)模板生成模擬數(shù)據(jù),模擬 Ajax 請(qǐng)求,生成并返回模擬數(shù)據(jù),基于 HTML 模板生成模擬數(shù)據(jù)。
地址:https://github.com/nuysoft/Mock
React 應(yīng)用的服務(wù)器渲染框架 Beidou
Beidou(北斗)?是?NodeJS & React?同構(gòu)框架,基于Egg.js開(kāi)發(fā)。
地址:https://github.com/alibaba/beidou
二、Java
JDBC 連接池、監(jiān)控組件 Druid
Druid是一個(gè) JDBC 組件。
地址:https://github.com/alibaba/druid
Java 的 JSON 處理器 fastjson
fastjson 是一個(gè)性能很好的 Java 語(yǔ)言實(shí)現(xiàn)的 JSON 解析器和生成器,來(lái)自阿里巴巴的工程師開(kāi)發(fā)。
主要特點(diǎn):快速FAST (比其它任何基于Java的解析器和生成器更快,包括jackson);強(qiáng)大(支持普通JDK類包括任意Java Bean Class、Collection、Map、Date或enum);零依賴(沒(méi)有依賴其它任何類庫(kù)除了JDK)。
地址:https://github.com/alibaba/fastjson
服務(wù)框架 Dubbo
Dubbo 是阿里巴巴公司開(kāi)源的一個(gè)高性能優(yōu)秀的服務(wù)框架,使得應(yīng)用可通過(guò)高性能的 RPC 實(shí)現(xiàn)服務(wù)的輸出和輸入功能,可以和 spring 框架無(wú)縫集成。
地址:https://github.com/alibaba/dubbo
企業(yè)級(jí)流式計(jì)算引擎 JStorm
[
](https://camo.githubuserconten...
JStorm 是參考 Apache Storm 實(shí)現(xiàn)的實(shí)時(shí)流式計(jì)算框架,在網(wǎng)絡(luò)IO、線程模型、資源調(diào)度、可用性及穩(wěn)定性上做了持續(xù)改進(jìn),已被越來(lái)越多企業(yè)使用。JStorm 可以看作是 storm 的 java 增強(qiáng)版本,除了內(nèi)核用純java實(shí)現(xiàn)外,還包括了thrift、python、facet ui。從架構(gòu)上看,其本質(zhì)是一個(gè)基于 zk 的分布式調(diào)度系統(tǒng)。
地址:https://github.com/alibaba/jstorm
apns4j
apns4j 是 Apple Push Notification Service 的 Java 實(shí)現(xiàn)!
地址:https://github.com/teaey/apns4j
分布式數(shù)據(jù)層 TDDL
TDDL 是一個(gè)基于集中式配置的 jdbc datasource實(shí)現(xiàn),具有主備,讀寫分離,動(dòng)態(tài)數(shù)據(jù)庫(kù)配置等功能。
地址:https://github.com/alibaba/tb_tddl
輕量級(jí)分布式數(shù)據(jù)訪問(wèn)層 CobarClient
Cobar Client是一個(gè)輕量級(jí)分布式數(shù)據(jù)訪問(wèn)層(DAL)基于iBatis(已更名為MyBatis)和Spring框架實(shí)現(xiàn)。
地址:https://github.com/alibaba/cobarclient
淘寶定制 JVM:TaobaoJVM
TaobaoJVM 基于 OpenJDK HotSpot VM,是國(guó)內(nèi)第一個(gè)優(yōu)化、定制且開(kāi)源的服務(wù)器版Java虛擬機(jī)。目前已經(jīng)在淘寶、天貓上線,全部替換了Oracle官方JVM版本,在性能,功能上都初步體現(xiàn)了它的價(jià)值。
地址:http://jvm.taobao.org
Java 圖片處理類庫(kù) SimpleImage
SimpleImage是阿里巴巴的一個(gè)Java圖片處理的類庫(kù),可以實(shí)現(xiàn)圖片縮略、水印等處理。
地址:https://github.com/alibaba/simpleimage
redis 的 java 客戶端 Tedis
Tedis 是另一個(gè) redis 的 java 客戶端。Tedis 的目標(biāo)是打造一個(gè)可在生產(chǎn)環(huán)境直接使用的高可用 Redis 解決方案。
地址:https://github.com/justified/tedis
三、數(shù)據(jù)庫(kù)
開(kāi)源數(shù)據(jù)庫(kù) AliSQL
AliSQL 是基于 MySQL 官方版本的一個(gè)分支,由阿里云數(shù)據(jù)庫(kù)團(tuán)隊(duì)維護(hù),目前也應(yīng)用于阿里巴巴集團(tuán)業(yè)務(wù)以及阿里云數(shù)據(jù)庫(kù)服務(wù)。該版本在社區(qū)版的基礎(chǔ)上做了大量的性能與功能的優(yōu)化改進(jìn)。尤其適合電商、云計(jì)算以及金融等行業(yè)環(huán)境。
地址:https://github.com/alibaba/AliSQL
分布式數(shù)據(jù)庫(kù) OceanBase
OceanBase是一個(gè)支持海量數(shù)據(jù)的高性能分布式數(shù)據(jù)庫(kù)系統(tǒng),實(shí)現(xiàn)了數(shù)千億條記錄、數(shù)百TB數(shù)據(jù)上的跨行跨表事務(wù),由淘寶核心系統(tǒng)研發(fā)部、運(yùn)維、DBA、廣告、應(yīng)用研發(fā)等部門共同完成。
地址:https://github.com/alibaba/oceanbase
分布式數(shù)據(jù)庫(kù)同步系統(tǒng) otter
otter 基于數(shù)據(jù)庫(kù)增量日志解析,準(zhǔn)實(shí)時(shí)同步到本機(jī)房或異地機(jī)房的mysql/oracle數(shù)據(jù)庫(kù). 一個(gè)分布式數(shù)據(jù)庫(kù)同步系統(tǒng)。
地址:https://github.com/alibaba/otter
Oracle 數(shù)據(jù)遷移同步工具 yugong
yugong 是阿里巴巴推出的去 Oracle 數(shù)據(jù)遷移同步工具(全量 + 增量,目標(biāo)支持 MySQL/DRDS)。
地址:https://github.com/alibaba/yugong
分布式 SQL 引擎 Lealone
Lealone 為 HBase 提供一個(gè)分布式SQL引擎,嘗試將BigTable(HBase)和 RDBMS (H2數(shù)據(jù)庫(kù)) 結(jié)合的項(xiàng)目。
地址:https://github.com/lealone/Lealone
關(guān)系型數(shù)據(jù)的分布式處理系統(tǒng) Cobar
Cobar 是關(guān)系型數(shù)據(jù)的分布式處理系統(tǒng),它可以在分布式的環(huán)境下像傳統(tǒng)數(shù)據(jù)庫(kù)一樣為您提供海量數(shù)據(jù)服務(wù)。以下是快速啟動(dòng)場(chǎng)景:
地址:https://github.com/alibaba/cobar
分布式關(guān)系數(shù)據(jù)庫(kù) Alibaba Wasp
Wasp 是類Google MegaStore & F1的分布式關(guān)系數(shù)據(jù)庫(kù)。
地址:https://github.com/alibaba/wasp
四、系統(tǒng)
分布式文件系統(tǒng) FastDFS
FastDFS 是一個(gè)開(kāi)源的分布式文件系統(tǒng),她對(duì)文件進(jìn)行管理,功能包括:文件存儲(chǔ)、文件同步、文件訪問(wèn)(文件上傳、文件下載)等,解決了大容量存儲(chǔ)和負(fù)載均衡的問(wèn)題。特別適合以文件為載體的在線服務(wù),如相冊(cè)網(wǎng)站、視頻網(wǎng)站等等。
地址:https://github.com/happyfish100/fastdfs
消息中間件 Apache RocketMQ
RocketMQ 是一款分布式、隊(duì)列模型的消息中間件,具有以下特點(diǎn):
- 能夠保證嚴(yán)格的消息順序
- 提供豐富的消息拉取模式
- 高效的訂閱者水平擴(kuò)展能力
- 實(shí)時(shí)的消息訂閱機(jī)制
- 億級(jí)消息堆積能力
地址:https://github.com/apache/rocketmq/
分布式 key/value 存儲(chǔ)系統(tǒng) Tair
Tair是一個(gè)Key/Value結(jié)構(gòu)數(shù)據(jù)的解決方案,它默認(rèn)支持基于內(nèi)存和文件的兩種存儲(chǔ)方式,分別和我們通常所說(shuō)的緩存和持久化存儲(chǔ)對(duì)應(yīng)。
地址 https://github.com/alibaba/tair
系統(tǒng)信息采集和監(jiān)控工具 Tsar
Tsar是淘寶的采集工具,主要用來(lái)收集服務(wù)器的系統(tǒng)信息(如cpu,io,mem,tcp等)以及應(yīng)用數(shù)據(jù)(如squid haproxy nginx等),tsar支持實(shí)時(shí)查看和歷史查看,方便了解應(yīng)用和服務(wù)器的信息!
地址:https://github.com/alibaba/tsar
分布式消息中間件 Metamorphosis
[
](https://camo.githubuserconten...
Metamorphosis (MetaQ) 是一個(gè)高性能、高可用、可擴(kuò)展的分布式消息中間件,類似于LinkedIn的Kafka,具有消息存儲(chǔ)順序?qū)憽⑼掏铝看蠛椭С直镜睾蚗A事務(wù)等特性,適用于大吞吐量、順序消息、廣播和日志數(shù)據(jù)傳輸?shù)葓?chǎng)景。
地址:https://github.com/killme2008/Metamorphosis
Linux 內(nèi)核的阿里巴巴分支 Ali-Kernel
Alibaba Kernel起源于亞洲最大的電子商務(wù)網(wǎng)站——阿里巴巴。它基于 RHEL6 源代碼,包含了阿里巴巴所需的一些更新和新功能。更多的信息和文檔,請(qǐng)參閱http://kernel.taobao.org
地址:https://github.com/alibaba/alikernel
淘寶Web服務(wù)器 Tengine
Tengine是由淘寶網(wǎng)發(fā)起的Web服務(wù)器項(xiàng)目。它在Nginx的基礎(chǔ)上,針對(duì)大訪問(wèn)量網(wǎng)站的需求,添加了很多高級(jí)功能和特性。Tengine的性能和穩(wěn)定性已經(jīng)在大型的網(wǎng)站如淘寶網(wǎng),天貓商城等得到了很好的檢驗(yàn)。它的最終目標(biāo)是打造一個(gè)高效、穩(wěn)定、安全、易用的Web平臺(tái)。
地址:https://github.com/alibaba/tengine
分布式文件系統(tǒng) TFS
TFS(Taobao FileSystem)是一個(gè)高可擴(kuò)展、高可用、高性能、面向互聯(lián)網(wǎng)服務(wù)的分布式文件系統(tǒng),其設(shè)計(jì)目標(biāo)是支持海量的非結(jié)構(gòu)化數(shù)據(jù)。
地址:https://github.com/alibaba/tfs
異步任務(wù)處理系統(tǒng) TBSchedule
tbschedule 是一個(gè)簡(jiǎn)潔的分布式任務(wù)調(diào)度引擎,</span></span>目的是讓一種批量任務(wù)或者不斷變化的任務(wù),能夠被動(dòng)態(tài)的分配到多個(gè)主機(jī)的JVM中,不同的線程組中并行執(zhí)行。所有的任務(wù)能夠被不重復(fù),不遺漏的快速處理。
地址:https://github.com/taobao/TBSchedule
容器引擎 Pouch
[
](https://user-images.githubuse...
Pouch 是一款輕量級(jí)的容器引擎,擁有快速高效、可移植性高、資源占用少等特性,主要幫助阿里更快的做到內(nèi)部業(yè)務(wù)的交付,同時(shí)提高超大規(guī)模下數(shù)據(jù)中心的物理資源利用率。
地址:https://github.com/alibaba/pouch
在線分析查詢系統(tǒng) mdrill
mdrill是一個(gè)分布式的在線分析查詢系統(tǒng),基于hadoop,lucene,solr,jstorm等開(kāi)源系統(tǒng)作為實(shí)現(xiàn),基于SQL的查詢語(yǔ)法。 mdrill是一個(gè)能夠?qū)Υ罅繑?shù)據(jù)進(jìn)行分布式處理的軟件框架。mdrill是快速的高性能的,他的底層因使用了索引、列式存儲(chǔ)、以及內(nèi)存cache等技 術(shù),使得數(shù)據(jù)掃描的速度大為增加。mdrill是分布式的,它以并行的方式工作,通過(guò)并行處理加快處理速度。
地址:https://github.com/alibaba/mdrill
五、教程
七天學(xué)會(huì)NodeJS文檔
七天學(xué)會(huì) NodeJS 是阿里巴巴國(guó)際站前端技術(shù)部編寫的開(kāi)源文檔,用于學(xué)習(xí) Node.js。
地址:https://github.com/nqdeng/7-days-nodejs
Nginx開(kāi)發(fā)從入門到精通
nginx由于出色的性能,在世界范圍內(nèi)受到了越來(lái)越多人的關(guān)注,在淘寶內(nèi)部它更是被廣泛的使用,眾多的開(kāi)發(fā)以及運(yùn)維同學(xué)都迫切的想要了解nginx模塊的開(kāi)發(fā)以及它的內(nèi)部原理,但是國(guó)內(nèi)卻沒(méi)有一本關(guān)于這方面的書,源于此我們決定自己來(lái)寫一本。本書的作者為淘寶核心系統(tǒng)服務(wù)器平臺(tái)組的成員,本書寫作的思路是從模塊開(kāi)發(fā)逐漸過(guò)渡到nginx原理剖析。
地址:https://github.com/taobao/nginx-book
總結(jié)
以上是生活随笔為你收集整理的【1024】阿里开源项目汇总的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: Hack Knowledges
- 下一篇: 【洛谷 P4934】 礼物 (位运算+D