導(dǎo)讀
阿里的開源項(xiàng)目很多窄陡,這也跟@淘寶正明的開源態(tài)度密不可分。有很多重量級的項(xiàng)目拆火,例如LVS跳夭、Tengine,或者很有實(shí)踐價值的中間件们镜,今天小編為大家匯總了阿里開源的項(xiàng)目币叹,快來看看吧!
服務(wù)框架 Dubbo
Dubbo 是阿里巴巴公司開源的一個高性能優(yōu)秀的服務(wù)框架憎账,使得應(yīng)用可通過高性能的 RPC 實(shí)現(xiàn)服務(wù)的輸出和輸入功能套硼,可以和 Spring框架無縫集成。
JDBC連接池胞皱、監(jiān)控組件 Druid
Druid是一個JDBC組件邪意,它包括三部分:
代理Driver九妈,能夠提供基于Filter-Chain模式的插件體系。
DruidDataSource 高效可管理的數(shù)據(jù)庫連接池雾鬼。
SQLParser
Java的JSON處理器 fastjson
fastjson 是一個性能很好的 Java 語言實(shí)現(xiàn)的 JSON 解析器和生成器萌朱,來自阿里巴巴的工程師開發(fā)。
分布式文件系統(tǒng) FastDFS
FastDFS是一個開源的分布式文件系統(tǒng)策菜,她對文件進(jìn)行管理晶疼,功能包括:文件存儲、文件同步又憨、文件訪問(文件上傳翠霍、文件下載)等,解決了大容量存儲和負(fù)載均衡的問題蠢莺。特別適合以文件為載體的在線服務(wù)寒匙,如相冊網(wǎng)站、視頻網(wǎng)站等等躏将。
淘寶Hadoop作業(yè)平臺 宙斯Zeus
宙斯(zeus)是什么 宙斯是一個完整的Hadoop的作業(yè)平臺 從Hadoop任務(wù)的調(diào)試運(yùn)行到生產(chǎn)任務(wù)的周期調(diào)度 宙斯支持任務(wù)的整個生命周期锄弱。
淘寶分布式數(shù)據(jù)庫 OceanBase
OceanBase是一個支持海量數(shù)據(jù)的高性能分布式數(shù)據(jù)庫系統(tǒng),實(shí)現(xiàn)了數(shù)千億條記錄祸憋、數(shù)百TB數(shù)據(jù)上的跨行跨表事務(wù)会宪,由淘寶核心系統(tǒng)研發(fā)部、運(yùn)維蚯窥、DBA掸鹅、廣告、應(yīng)用研發(fā)等部門共同完成拦赠。在設(shè)計(jì)和實(shí)現(xiàn)OceanBase的時候暫時摒棄了不緊急的DBMS的功能河劝,例如臨時表,視圖(view)矛紫,研發(fā)團(tuán)隊(duì)把有限的資源集中到關(guān)鍵點(diǎn)上,當(dāng)前 OceanBase主要解決數(shù)據(jù)更新一致性牌里、高性能的跨表讀事務(wù)颊咬、范圍查詢、join牡辽、數(shù)據(jù)全量及增量dump喳篇、批量數(shù)據(jù)導(dǎo)入。
目前OceanBase已經(jīng)應(yīng)用于淘寶收藏夾态辛,用于存儲淘寶用戶收藏條目和具體的商品麸澜、店鋪信息,每天支持4~5千萬的更新操作奏黑。等待上線的應(yīng)用還包括CTU炊邦、SNS等编矾,每天更新超過20億,更新數(shù)據(jù)量超過2.5TB馁害,并會逐步在淘寶內(nèi)部推廣窄俏。
分布式key/value存儲系統(tǒng) Tair
Tair是由淘寶網(wǎng)自主開發(fā)的Key/Value結(jié)構(gòu)數(shù)據(jù)存儲系統(tǒng),在淘寶網(wǎng)有著大規(guī)模的應(yīng)用碘菜。您在登錄淘寶凹蜈、查看商品詳情頁面或者在淘江湖和好友“搗漿糊”的時候,都在直接或間接地和Tair交互忍啸。
系統(tǒng)信息采集和監(jiān)控工具 Tsar
Tsar是淘寶的采集工具仰坦,主要用來收集服務(wù)器的系統(tǒng)信息(如cpu,io计雌,mem悄晃,tcp等)以及應(yīng)用數(shù)據(jù)(如squid haproxy nginx等),tsar支持實(shí)時查看和歷史查看白粉,方便了解應(yīng)用和服務(wù)器的信息传泊!
它類似于sar,能監(jiān)控和收集服務(wù)器和關(guān)鍵應(yīng)用的信息鸭巴,支持實(shí)時終端顯示和集中式數(shù)據(jù)庫存儲查詢眷细,還能向Nagios發(fā)送報(bào)警信息。Tsar模塊化的設(shè)計(jì)利于通過開發(fā)新模塊來擴(kuò)展新的功能鹃祖,非常方便溪椎。
七天學(xué)會NodeJS
七天學(xué)會NodeJS是阿里巴巴國際站前端技術(shù)部編寫的開源文檔,用于學(xué)習(xí) Node.js恬口。
模塊加載框架 SeaJS
Sea.JS 是一個遵循 CommonJS 規(guī)范的模塊加載框架校读,可用來輕松愉悅地加載任意JavaScript模塊。 SeaJS 支持的標(biāo)準(zhǔn)模塊遵循 Modules/Wrappings 規(guī)范的 define 形式祖能,可運(yùn)行于 Web 瀏覽器以及 node.JS 等環(huán)境中歉秫。
分布式消息中間件 Metamorphosis
Metamorphosis (MetaQ) 是一個高性能、高可用养铸、可擴(kuò)展的分布式消息中間件雁芙,類似于LinkedIn的Kafka,具有消息存儲順序?qū)懗⑼掏铝看蠛椭С直镜睾蚗A事務(wù)等特性兔甘,適用于大吞吐量、順序消息鳞滨、廣播和日志數(shù)據(jù)傳輸?shù)葓鼍岸幢海谔詫毢椭Ц秾氂兄鴱V泛的應(yīng)用,現(xiàn)已開源。
阿里巴巴分布式數(shù)據(jù)庫同步系統(tǒng) otter
otter 基于數(shù)據(jù)庫增量日志解析澡匪,準(zhǔn)實(shí)時同步到本機(jī)房或異地機(jī)房mysql/oracle數(shù)據(jù)庫. 一個分布式數(shù)據(jù)庫同步系統(tǒng)熔任。
HTML5 互動游戲引擎 Hilo
Hilo 是阿里巴巴集團(tuán)開發(fā)的一款HTML5跨終端游戲解決方案,ta可以幫助開發(fā)者快速創(chuàng)建HTML5游戲仙蛉。
JavaScript 模板引擎 Velocity.js
Velocity.js 是velocity模板語法的javascript實(shí)現(xiàn)笋敞。Velocity 是基于Java的模板引擎,廣泛應(yīng)用在阿里集 體各個子公司荠瘪。Velocity模板適用于大量模板使用的場景夯巷,支持復(fù)雜的邏輯運(yùn)算,包含 基本數(shù)據(jù)類型哀墓、變量賦值和函數(shù)等功能趁餐。Velocity.js 支持 Node.js 和瀏覽器環(huán)境。
Oracle數(shù)據(jù)遷移同步工具 yugong
yugong 是阿里巴巴推出的去Oracle數(shù)據(jù)遷移同步工具(全量+增量,目標(biāo)支持MySQL/DRDS)08年左右篮绰,阿里巴巴開始嘗試MySQL的相關(guān)研究后雷,并開發(fā)了基于MySQL分庫分表技術(shù)的相關(guān)產(chǎn)品Cobar/TDDL(目前為阿里云DRDS產(chǎn)品),解決了單機(jī)Oracle無法滿足的擴(kuò)展性問題吠各,當(dāng)時也掀起一股去IOE項(xiàng)目的浪潮臀突,愚公這項(xiàng)目因此而誕生,其要解決的目標(biāo)就是幫助用戶完成從Oracle數(shù)據(jù)遷移到MySQL上贾漏,完成去IOE的第一步候学。
自動化測試解決方案 Macaca
官方網(wǎng)站: 鏈接 Macaca是一套完整的自動化測試解決方案。 特性: 支持移動端和PC端纵散;支持Native, Hybrid, H5 等多種應(yīng)用類型梳码;提供客戶端工具和持續(xù)集成服務(wù)。
非侵入式運(yùn)行期 AOP 框架 Dexposed
Dexposed 是阿里巴巴無線事業(yè)部第一個重量級Andorid 開源軟件伍掀,基于 ROOT 社區(qū)著名開源項(xiàng)目 Xposed 改造剝離了 ROOT 部分掰茶,演化為服務(wù)于所在應(yīng)用自身的 AOP 框架。它支撐了阿里大部分 App 的在線分鐘級客戶端 bugfix 和線上調(diào)試能力蜜笤。
Dexposed 的 AOP 是實(shí)現(xiàn)了純非侵入式濒蒋,沒有任何注釋處理器,weaver 或者字節(jié)碼重寫程序把兔。
Dexposed 的集成非常簡單啊胶,就像加載一個 JNI 庫一樣,只需要在初始化的時候插入一行代碼垛贤。
Android 應(yīng)用熱修復(fù)工具 AndFix
AndFix 是阿里巴巴開源的 Android 應(yīng)用熱修復(fù)工具,幫助 Anroid 開發(fā)者修復(fù)應(yīng)用的線上問題趣倾。Andfix 是 "Android hot-fix" 的縮寫聘惦。
AndFix 支持 Android 2.3 - 6.0,ARM 和 x86 架構(gòu),dalvik 運(yùn)行時和 art 運(yùn)行時善绎。AndFix 的分支是.apatch 文件黔漂。
分布式SQL引擎 Lealone
Lealone 為 HBase 提供一個分布式SQL引擎,嘗試將BigTable(HBase)和 RDBMS (H2數(shù)據(jù)庫) 結(jié)合的項(xiàng)目禀酱。
php框架 WindFramework
Wind Framework是phpwind團(tuán)隊(duì)開發(fā)的一款php框架炬守。2010年10月份開始投入開發(fā),目前為止已經(jīng)內(nèi)部發(fā)行了四個版本(0.5剂跟,0.8减途,0.9,1.0)曹洽。它源自phpwind社區(qū)產(chǎn)品的一次名為‘鵲橋’的重構(gòu)計(jì)劃鳍置。意在重新定義phpwind的架構(gòu)層次開發(fā)模式,使其看起來更清晰送淆,更易于擴(kuò)展和二次開發(fā)税产。后來在一次討論中重構(gòu)計(jì)劃被分為了兩個部分進(jìn)行。一部分為底層核心框架偷崩。另一部分為phpwind社區(qū)數(shù)據(jù)服務(wù)中心辟拷,插件組件機(jī)制。
反向代理測試套件 Macaroon
Macaroon 是一個高效的反向代理測試套件阐斜,測試框架本身基于python2.7開發(fā)衫冻,方便跨平臺移植;測試?yán)褂酶袷交枋鲋翘龅骄幊陶Z言無關(guān)性羽杰。使用 Macaroon能夠簡便快捷的完成測試場景的構(gòu)造、線上失效案例的重建及被測軟件(DUT)的功能到推、模塊考赛、協(xié)議一致性測試等。
基于 Node.js 的自動化持續(xù)集成 Reliable
Reliable 是分布式架構(gòu)的持續(xù)集成系統(tǒng)莉测,由 Macaca 團(tuán)隊(duì)的成員開發(fā)颜骤。適用于集成構(gòu)建、集成構(gòu)建等場景捣卤。她是典型的主從結(jié)構(gòu)忍抽,分為 reliable-master 與 reliable-slave 兩部分。
淘寶 React 框架 React Web
淘寶前端團(tuán)隊(duì)開源項(xiàng)目React Web董朝,通過與React Native一致的API構(gòu)建Web應(yīng)用鸠项。
跨平臺移動開發(fā)工具 Weex
2016年4月21日,阿里巴巴在Qcon大會上宣布開源跨平臺移動開發(fā)工具Weex子姜,Weex能夠完美兼顧性能與動態(tài)性祟绊,讓移動開發(fā)者通過簡捷的前端語法寫出Native級別的性能體驗(yàn),并支持iOS、安卓牧抽、YunOS及Web等多端部署嘉熊。
Java APNS開源庫 apns4j
apns4j 是 Apple Push Notification Service 的 Java 實(shí)現(xiàn)!
淘寶Web服務(wù)器 Tengine
Tengine是由淘寶網(wǎng)發(fā)起的Web服務(wù)器項(xiàng)目扬舒。它在Nginx的基礎(chǔ)上阐肤,針對大訪問量網(wǎng)站的需求,添加了很多高級功能和特性讲坎。Tengine的性能和穩(wěn)定性已經(jīng)在大型的網(wǎng)站如淘寶網(wǎng)孕惜,天貓商城等得到了很好的檢驗(yàn)。它的最終目標(biāo)是打造一個高效衣赶、穩(wěn)定诊赊、安全、易用的Web平臺府瞄。
Web常用UI庫 kissy
kissy 是淘寶一個開源的 JavaScript 庫碧磅,包含的組件有:日歷、圖片放大鏡遵馆、卡片切換鲸郊、彈出窗口、輸入建議等货邓。
Bug管理系統(tǒng) BugFree
BugFree - 借鑒微軟公司軟件研發(fā)理念秆撮、免費(fèi)且開放源代碼、基于Web的精簡版Bug管理系統(tǒng)换况。
Nginx開發(fā)從入門到精通
nginx由于出色的性能职辨,在世界范圍內(nèi)受到了越來越多人的關(guān)注,在淘寶內(nèi)部它更是被廣泛的使用戈二,眾多的開發(fā)以及運(yùn)維同學(xué)都迫切的想要了解nginx模塊的開發(fā)以及它的內(nèi)部原理舒裤,但是國內(nèi)卻沒有一本關(guān)于這方面的書,源于此我們決定自己來寫一本觉吭。本書的作者為淘寶核心系統(tǒng)服務(wù)器平臺組的成員腾供,本書寫作的思路是從模塊開發(fā)逐漸過渡到nginx原理剖析。書籍的內(nèi)容會定期在這里更新鲜滩,歡迎大家提出寶貴意見伴鳖,不管是本書的內(nèi)容問題,還是字詞錯誤徙硅,都?xì)g迎大家提交issue(章節(jié)標(biāo)題的左側(cè)有評注按鈕)榜聂,我們會及時的跟進(jìn)。
消息中間件 RocketMQ
RocketMQ 是一款分布式嗓蘑、隊(duì)列模型的消息中間件峻汉,具有以下特點(diǎn):
能夠保證嚴(yán)格的消息順序
提供豐富的消息拉取模式
高效的訂閱者水平擴(kuò)展能力
實(shí)時的消息訂閱機(jī)制
億級消息堆積能力
Metaq3.0 版本改名贴汪,產(chǎn)品名稱改為RocketMQ
分布式數(shù)據(jù)層 TDDL
淘寶根據(jù)自己的業(yè)務(wù)特點(diǎn)開發(fā)了TDDL(Taobao Distributed Data Layer 外號:頭都大了 ?_Ob)框架,主要解決了分庫分表對應(yīng)用的透明化以及異構(gòu)數(shù)據(jù)庫之間的數(shù)據(jù)復(fù)制休吠,它是一個基于集中式配置的 jdbc datasource實(shí)現(xiàn),具有主備业簿,讀寫分離瘤礁,動態(tài)數(shù)據(jù)庫配置等功能。
國產(chǎn)論壇系統(tǒng) PHPWind
PHPWind 論壇系統(tǒng) 是一套采用 php+mysql 數(shù)據(jù)庫 方式運(yùn)行并可生成 html 頁面的全新且完善的強(qiáng)大系統(tǒng)梅尤。因具有非凡的訪問速度和卓越的負(fù)載能力而深受國內(nèi)外朋友的喜愛柜思。
通用WEB框架 Webx
Webx是一個在阿里巴巴集團(tuán)內(nèi)部廣泛使用的,層次化巷燥、模塊化的一個Web框架赡盘。 Webx是基于經(jīng)典MVC設(shè)計(jì)模式的WEB框架,推崇頁面驅(qū)動和約定勝于配置的理念缰揪。 Webx是一個基于Spring的組件框架陨享。組件是一個軟件包,它可以被其它組件擴(kuò)展钝腺,也可以擴(kuò)展其它組件抛姑。利用這些特性,Webx不僅能夠用來開發(fā)高度可定制的Web應(yīng)用(這是它的主要功能)艳狐,也能夠用來幫助你開發(fā)高度可擴(kuò)展的非WEB的應(yīng)用定硝。
分布式文件系統(tǒng) TFS
TFS(Taobao FileSystem)是一個高可擴(kuò)展、高可用毫目、高性能蔬啡、面向互聯(lián)網(wǎng)服務(wù)的分布式文件系統(tǒng),其設(shè)計(jì)目標(biāo)是支持海量的非結(jié)構(gòu)化數(shù)據(jù)镀虐。
目前箱蟆,國內(nèi)自主研發(fā)的文件系統(tǒng)可謂鳳毛麟角。淘寶在這一領(lǐng)域做了有效的探索和實(shí)踐粉私,Taobao File System(TFS)作為淘寶內(nèi)部使用的分布式文件系統(tǒng)顽腾,針對海量小文件的隨機(jī)讀寫訪問性能做了特殊優(yōu)化,承載著淘寶主站所有圖片诺核、商品描述等數(shù)據(jù)存儲抄肖。
分布式核心技術(shù)框架 Fourinone
FourInOne(中文名字“四不像”)是一個四合一分布式計(jì)算框架。
異步文件上傳組件 Uploader
Uploader是非常強(qiáng)大的異步文件上傳組件窖杀,支持ajax漓摩、iframe、flash三套方案入客,實(shí)現(xiàn)瀏覽器的全兼容管毙,調(diào)用非常簡單腿椎,內(nèi)置多套主題支持 和常用插件,比如驗(yàn)證夭咬、圖片預(yù)覽啃炸、進(jìn)度條等,廣泛應(yīng)用于淘寶網(wǎng)卓舵,比如退款系統(tǒng)南用、愛逛街、二手掏湾、拍賣裹虫、我的淘寶、賣家中心融击、導(dǎo)購中心等筑公。
異構(gòu)數(shù)據(jù)源數(shù)據(jù)交換工具 DataX
DataX是一個讓你方便的在異構(gòu)數(shù)據(jù)源之間交換數(shù)據(jù)的離線同步框架/工具,實(shí)現(xiàn)了在任意的數(shù)據(jù)處理系統(tǒng)之間的數(shù)據(jù)交換尊浪,目前DataX在淘寶內(nèi)部每天約有5000道同步任務(wù)分布在全天各個時段匣屡,平均每天同步數(shù)據(jù)量在2-3TB拘鞋。
輕量級分布式數(shù)據(jù)訪問層 CobarClient
Cobar Client是一個輕量級分布式數(shù)據(jù)訪問(DAL)基于iBatis(已更名為MyBatis)和Spring框架實(shí)現(xiàn)落剪。
多瀏覽器兼容性測試整體解決方案 F2etest
F2etest 是一個面向前端、測試主卫、產(chǎn)品等崗位的多瀏覽器兼容性測試整體解決方案工育。
http壓力測試工具 httpsender
httpsender是一款輕量級的http壓力測試工具虾宇,由淘寶的測試工程師用Java語言開發(fā)完成。它可以指定并發(fā)連接數(shù)發(fā)送指定數(shù)目的請求如绸,還可以自定義請求的header頭嘱朽。請求的URL支持通過正則表達(dá)式指定范圍,同時也支持從文件隨機(jī)或順序讀取怔接。它還具備驗(yàn)證數(shù)據(jù)是否完整和錯亂等較高級的功能搪泳。默認(rèn)應(yīng)用環(huán)境為Linux。
淘蝌蚪開源平臺 taocode
taocode(淘蝌蚪)是淘寶網(wǎng)推出的開源平臺扼脐。平臺本身也是開源的岸军。
阿里Redis緩存服務(wù)器 AliRedis
AliRedis 是阿里巴巴運(yùn)維團(tuán)隊(duì)基于 Redis 改造的緩存服務(wù)器,目前該項(xiàng)目尚未發(fā)布瓦侮。
binlog的增量訂閱&消費(fèi)組件 canal
canal 是阿里巴巴mysql數(shù)據(jù)庫binlog的增量訂閱&消費(fèi)組件艰赞。
移動自動化測試平臺 Athrun
Storm 是一個類似Hadoop MapReduce的系統(tǒng), 用戶按照指定的接口實(shí)現(xiàn)一個任務(wù)肚吏,然后將這個任務(wù)遞交給JStorm系統(tǒng)方妖,Jstorm將這個任務(wù)跑起來,并且按7 * 24小時運(yùn)行起來罚攀,一旦中間一個worker 發(fā)生意外故障党觅, 調(diào)度器立即分配一個新的worker替換這個失效的worker雌澄。因此,從應(yīng)用的角度杯瞻,JStorm 應(yīng)用是一種遵守某種編程規(guī)范的分布式應(yīng)用镐牺。從系統(tǒng)角度, JStorm一套類似MapReduce的調(diào)度系統(tǒng)魁莉。 從數(shù)據(jù)的角度, 是一套基于流水線的消息處理機(jī)制沛厨。實(shí)時計(jì)算現(xiàn)在是大數(shù)據(jù)領(lǐng)域中最火爆的一個方向摔认,因?yàn)槿藗儗?shù)據(jù)的要求越來越高,實(shí)時性要求也越來越快参袱,傳統(tǒng)的Hadoop Map Reduce电谣,逐漸滿足不了需求抹蚀,因此在這個領(lǐng)域需求不斷。
分布式計(jì)算系統(tǒng) JStorm
Storm 是一個類似Hadoop MapReduce的系統(tǒng)环壤, 用戶按照指定的接口實(shí)現(xiàn)一個任務(wù)晒来,然后將這個任務(wù)遞交給JStorm系統(tǒng),Jstorm將這個任務(wù)跑起來湃崩,并且按7 * 24小時運(yùn)行起來接箫,一旦中間一個worker 發(fā)生意外故障, 調(diào)度器立即分配一個新的worker替換這個失效的worker薄扁。
因此废累,從應(yīng)用的角度,JStorm 應(yīng)用是一種遵守某種編程規(guī)范的分布式應(yīng)用九默。從系統(tǒng)角度, JStorm一套類似MapReduce的調(diào)度系統(tǒng)殿遂。 從數(shù)據(jù)的角度, 是一套基于流水線的消息處理機(jī)制幢竹。實(shí)時計(jì)算現(xiàn)在是大數(shù)據(jù)領(lǐng)域中最火爆的一個方向恩静,因?yàn)槿藗儗?shù)據(jù)的要求越來越高,實(shí)時性要求也越來越快邑飒,傳統(tǒng)的Hadoop Map Reduce级乐,逐漸滿足不了需求,因此在這個領(lǐng)域需求不斷风科。
關(guān)系型數(shù)據(jù)的分布式處理系統(tǒng) Cobar
Cobar是關(guān)系型數(shù)據(jù)的分布式處理系統(tǒng),它可以在分布式的環(huán)境下像傳統(tǒng)數(shù)據(jù)庫一樣為您提供海量數(shù)據(jù)服務(wù)题山。
淘寶的Linux系統(tǒng) taolinux
基于淘寶多年服務(wù)器優(yōu)化積累, 內(nèi)核優(yōu)化經(jīng)驗(yàn)故痊。
nodejs-kissy
KISSY 是淘寶網(wǎng)開發(fā)的一款輕巧靈活的JS框架崖蜜,如今已經(jīng)是1.1.7版本,并在淘寶網(wǎng)廣泛應(yīng)用豫领,在瀏覽器端給我們帶來更加清新的體驗(yàn),今天讓我們更進(jìn)一步洲劣,我們 發(fā)起了nodejs-kissy 項(xiàng)目课蔬,你的 KISSY 程序可以無縫移植到服務(wù)器端了 。
Dubbo 文檔鏡像 dubbo-doc-static
dubbo-doc-static 是 Dubbo 的文檔鏡像战惊。
自動化云測試平臺 AutoMan
AutoMan的前身是tCommon和TAM(taobao-automan),經(jīng)過對兩者不斷的優(yōu)化和擴(kuò)展扎即,逐步形成現(xiàn)在一套完整的頁面自動化平臺况凉, 意在提高測試人員的測試效率各拷,測試質(zhì)量,象踏上“風(fēng)火輪”那樣騰挪馳騁于整個測試過程知市。
在線分析查詢系統(tǒng) mdrill
mdrill是由阿里媽媽開源的一套數(shù)據(jù)的軟件嫂丙,針對TB級數(shù)據(jù)量规哲,能夠僅用10臺機(jī)器,達(dá)到秒級響應(yīng)媳叨,數(shù)據(jù)能實(shí)時導(dǎo)入,可以對任意的維度進(jìn)行組合與過濾糊秆。
mdrill作為數(shù)據(jù)在線分析處理軟件议双,可以在幾秒到幾十秒的時間,分析百億級別的任意組合維度的數(shù)據(jù)平痰。
淘寶定制JVM TaobaoJVM
淘寶有幾萬臺Java應(yīng)用服務(wù)器,上千名Java工程師昂芜、及上百個Java應(yīng)用赔蒲。為此,核心系統(tǒng)研發(fā)部專用計(jì)算組的工作之一是專注于OpenJDK的優(yōu)化及定制欢际,根據(jù)業(yè)務(wù)矾兜、應(yīng)用特點(diǎn)及開發(fā)者需要,提供穩(wěn)定浑槽,高效和深度定制的JVM版本:Taobao JVM。
接口文檔管理工具 RAP
RAP通過GUI工具幫助WEB工程師更高效的管理接口文檔高镐,同時通過分析接口結(jié)構(gòu)自動生成Mock數(shù)據(jù)畸冲、校驗(yàn)真實(shí)接口的正確性,使接口文檔成為開發(fā)流程中的強(qiáng)依賴算行。有了結(jié)構(gòu)化的API數(shù)據(jù)苫耸,RAP可以做的更多,而我們可以避免更多重復(fù)勞動量淌。
異步任務(wù)處理系統(tǒng) TBSchedule
由原來的項(xiàng)目taobao-pamirs-schedule 更名為 TBSchedule
分布式哈希表 FastDHT
FastDHT 是一個高性能的分布式哈希系統(tǒng) (DHT) 嫌褪,使用 Berkeley DB 做數(shù)據(jù)存儲,使用 libevent 做網(wǎng)絡(luò)IO處理裙秋,提供 Java 版的客戶端接口包缨伊。適合用來存儲用戶在線、會話等小數(shù)據(jù)量信息枷恕。
異步文件上傳組件 KF/Uploader
支持ajax谭胚、flash、iframe三方案蛹锰,兼容所有瀏覽器绰疤。
配置簡單,支持偽屬性配置(data-config=’{}’)和配置屬性來配置
ajax和flash上傳方式,帶有上傳進(jìn)度顯示
隊(duì)列上傳敛劝,批量上傳等待中的文件
支持中途取消上傳
支持上傳驗(yàn)證纷宇,整合kissy的validation組件
不錯的擴(kuò)展性,自由定制按鈕和隊(duì)列模板樣式
自動化測試任務(wù)調(diào)度平臺 TOAST
TOAST(Toast Open Automation System for Test) 是一淘廣告技術(shù)測試團(tuán)隊(duì)開發(fā)的一套自動化測試任務(wù)調(diào)度平臺上陕。
java表達(dá)式計(jì)算 QLExpress
QLExpress 是一個輕量級的類java語法規(guī)則引擎释簿,作為一個嵌入式規(guī)則引擎在業(yè)務(wù)系統(tǒng)中使用硼莽。讓業(yè)務(wù)規(guī)則定義簡便而不失靈活。讓業(yè)務(wù)人員就可以定義業(yè)務(wù)規(guī)則偏螺。支持標(biāo)準(zhǔn)的JAVA語法,還可以支持自定義操作符號砖茸、操作符號重載殴穴、 函數(shù)定義货葬、宏定義震桶、數(shù)據(jù)延遲加載等休傍。
淘寶開放平臺JAVA版SDK top4java
容易維護(hù)擴(kuò)展(不需要修改主類就可以 添加新的API支持)
注入型解釋器(依據(jù)不同的返回格式注入相應(yīng)的解釋器)
集中管理請求參數(shù)與參數(shù)映射
以運(yùn)行時異常的方式來管理錯誤的響應(yīng)
使用泛型來做強(qiáng)類型編程
多協(xié)議 擴(kuò)展支持(REST, RPC, SOAP, etc)
Java 圖片處理類庫 SimpleImage
SimpleImage是阿里巴巴的一個Java圖片處理的類庫磨取,可以實(shí)現(xiàn)圖片縮略柴墩、水印等處理。
性能分析工具 TProfiler
TProfiler是一個可以在生產(chǎn)環(huán)境長期使用的性能分析工具.它同時支持剖析和采樣兩種方式,記錄方法執(zhí)行的時間和次數(shù),生成方法熱點(diǎn) 對象創(chuàng)建熱點(diǎn) 線程狀態(tài)分析等數(shù)據(jù),為查找系統(tǒng)性能瓶頸提供數(shù)據(jù)支持逢净。
代碼評審工具 Tao-ReviewBoard
ReviewBoard是一款開源的代碼review工具,包括服務(wù)器端程序(reveiwboard)和客戶端命令行(RBTools)甥雕。用戶可以通過RBTools的一些列命令在客戶端提交request,但是使用和安裝都有很多不便胀茵。Tao-ReviewBoard是淘寶開發(fā)的基于eclipse的reviewboard插件,能很好的解決安裝和使用的問題峭弟。這個插件已經(jīng)在淘寶使用近一年轨奄,現(xiàn)在工具開源了共享給大家。
基于Svg的圖表組件庫 KCharts
KCharts是基于Svg的圖表組件庫挨务,兼容IE6+等主流瀏覽器玉组」喏ǎ基于淘寶js框架KISSY的圖表組件庫,包含折線圖石景、曲線圖潮孽、柱狀圖、散點(diǎn)圖仗颈、餅圖椎例、地圖等常用圖表。采用kissy的模塊加載器脖祈,實(shí)現(xiàn)按需加載刷晋,支持cdn動態(tài)合并福压。KCharts 基于RaphelJs開發(fā)荆姆,大量的html+css實(shí)現(xiàn)了基礎(chǔ)grid映凳,流暢的動畫,豐富的demo仆救,還有實(shí)用的圖表在線生成器(Chart Generator)矫渔,方便初學(xué)者實(shí)用庙洼。
模擬數(shù)據(jù)生成器 Mock.js
Mock.js 是一款模擬數(shù)據(jù)生成器,旨在幫助前端攻城師獨(dú)立于后端進(jìn)行開發(fā)蚁袭,幫助編寫單元測試石咬。
表達(dá)式解析引擎 SimpleEL
Simple EL是一個表達(dá)式解析引擎。它將表達(dá)式解析分成四個部分:預(yù)處理删性、編譯焕窝、緩存和執(zhí)行袜啃。這四個步驟任意一部分都可以替換幸缕,類似設(shè)計(jì)模式中的Template Method。
GUI的WEB接口管理工具 Rigel Automation
RAP Rigel Automation Platform 是一個GUI的WEB接口管理工具熟妓。在RAP中栏尚,您可定義接口的URL、請求&響應(yīng)細(xì)節(jié)格式等等抬虽。通過分析這些數(shù)據(jù)阐污,RAP提供MOCK服務(wù)、測試服務(wù)等自動化工具功氨。RAP同時提供大量企業(yè)級功能手幢,幫助企業(yè)和團(tuán)隊(duì)高效的工作。
實(shí)時數(shù)據(jù)傳輸平臺 TimeTunnel
TimeTunnel(簡稱TT)是一個基于thrift通訊框架搭建的實(shí)時數(shù)據(jù)傳輸平臺跺涤,具有高性能管钳、實(shí)時性才漆、順序性、高可靠性黎比、高可用性鸳玩、可擴(kuò)展性等特點(diǎn)。
tair-client-java
tair-client-java 是淘寶 Tair 這個分布式 Key/Value 存儲系統(tǒng)的 Java 客戶端開發(fā)包颓帝。
Tair的java客戶端使用純java開發(fā)购城,底層使用mina 通信框架虐译,接口簡潔易用。經(jīng)過生產(chǎn)環(huán)境的壓力測試侮攀,穩(wěn)定可靠。
富邏輯的模板引擎 xtemplate.js
xtemplate 是獨(dú)立的富邏輯模板引擎撇叁,基于瀏覽器和 Node.js 的可擴(kuò)展的模板引擎庫箭昵。
xtemplate 支持異步控制和繼承家制,包括邏輯表達(dá)式,自定義函數(shù)等等觅廓。
Nginx的TFS模塊 nginx-tfs
nginx-tfs 是 Nginx 的擴(kuò)展模塊用于訪問淘寶的 TFS 文件系統(tǒng)涵但。這個模塊實(shí)現(xiàn)了TFS的客戶端矮瘟,為TFS提供了RESTful API。TFS的全稱是Taobao File System劫侧,是淘寶開源的一個分布式文件系統(tǒng)哨啃。
redis的java客戶端 Tedis
Tedis是另一個redis的java客戶端,Tedis的目標(biāo)是打造一個可在生產(chǎn)環(huán)境直接使用的高可用Redis解決方案。
數(shù)據(jù)中間層 nQuery
nQuery 引擎是來自阿里的數(shù)據(jù)中間層审姓,主要為應(yīng)對大數(shù)據(jù)場景的在線查詢的三大難題:長數(shù)據(jù)祝峻、寬數(shù)據(jù)莱找、雜數(shù)據(jù), 廣泛參考 Big Query轴踱、Impala谚赎、 PL/SQL壶唤、MySQL 、PgSQL悯辙、ql.io 等迎吵,結(jié)合自身業(yè)務(wù)特點(diǎn)击费,自行精心 設(shè)計(jì)、實(shí)現(xiàn)的一套類SQL 語言(nSQL)及解析谆棱、執(zhí)行引擎圆仔,它有著廣泛的應(yīng)用場景與很強(qiáng)的實(shí)用 價值,能對 *SQL 型數(shù)據(jù)庫提供翻譯與兼容个从,對K/V 數(shù)據(jù)如HBase信姓、OTS 或其他通用的數(shù)據(jù)源绸罗, 它可以作為一個簡潔強(qiáng)大的SQL 查詢引擎,并以擴(kuò)展SQL 的創(chuàng)新方式來支持?jǐn)?shù)據(jù)JOIN菊值, 結(jié)合 NodeJS 框架,完全可以提供統(tǒng)一的SQL接口的高并發(fā)腻窒、高性能的的在線查詢服務(wù)磅崭,解耦前后端, 極大的降低大數(shù)據(jù)場景下產(chǎn)品開發(fā)復(fù)雜度柔逼。
持久配置中心 diamond
diamond 是持久配置中心,支持各種持久信息(比如各種規(guī)則犯助,數(shù)據(jù)庫配置等)的發(fā)布和訂閱剂买。
支持緩存線程池的ThreadLocal Transmittable ThreadLocal(TTL)
在ThreadLocal的需求場景即是TTL的潛在需求場景癌蓖,如果你的業(yè)務(wù)需要『在使用線程池等會緩存線程的組件情況下傳遞ThreadLocal』則是TTL目標(biāo)場景租副。
代理服務(wù)器 AnyProxy
AnyProxy 是一個基于 Node.js 的代理服務(wù)器。代理服務(wù)器是個中間人讨越,站在了客戶端和服務(wù)端中間永毅,雙方通信的每個比特沼死,都會滴水不漏地經(jīng)過它。它控制了完整的請求頭耸别、請求體县钥、響應(yīng)頭、響應(yīng)體省有,可以在客 戶端與服務(wù)端都無感知的情況下介入處理所有的流程蠢沿。只要代理服務(wù)器可以實(shí)現(xiàn)靈活配置匾效,前端工程師們的奇葩需求就有出頭之日了。
DSL語法解析器生成器 dropincc.java
一個簡單野宜、好用的語法解析器生成器速缨;
專為java語言環(huán)境下代乃,實(shí)施DSL方案而設(shè)計(jì)搁吓;
特點(diǎn):使用純java語法(Fluent Interface)制定用戶的詞法、語法規(guī)則擂橘;jdk1.6 compiler API動態(tài)編譯為字節(jié)碼摩骨;自動管理字節(jié)碼恼五、用戶無需關(guān)心具體生成的解析器源碼;專為DSL打造茎用,相對與使用其它常見工具(javacc, antlr等)做DSL解析睬罗,代碼量急劇下降容达;上手較為容易,讓用戶更加關(guān)注自身業(yè)務(wù)內(nèi)容
需要jdk1.6或以上版本運(yùn)行,無任何其它依賴
識別LL(*)語法
mysql 代理 myrelay
mysql的代理蒿褂,支持如下特性:
采用事件驅(qū)動卒暂、異步也祠、非阻塞的設(shè)計(jì)模式,性能優(yōu)秀
采用mysql原生協(xié)議堪旧,對應(yīng)用層透明
支持mysql讀寫分離
提供mysql連接池管理
支持mysql冗余、健康檢查
提供mysql的查詢?nèi)罩疚鲈遥奖銓?yīng)用層進(jìn)行分析
支持mysql配置動態(tài)加載
C語言實(shí)現(xiàn)
nginx-http-sysguard
nginx-http-sysguard 是阿里巴巴開發(fā)的一個 Nginx 模塊首繁,用來保護(hù)運(yùn)行 Nginx 服務(wù)器的系統(tǒng)負(fù)載和內(nèi)存使用不會太高陨囊。