阿里巴巴 开源软件列表

服务框架 Dubbo

Java的JSON处理器 fastjson

fastjson 是一个性能很好的 Java 语言实现的 JSON 解析器和生成器,来自阿里巴巴的工程师开发。

分布式文件系统 FastDFS

FastDFS是一个开源的分布式文件系统,她对文件进行管理,功能包括:文件存储、文件同步、文件访问(文件上传、文件下载)等,解决了大容量存储和负载均衡的问题。特别适合以文件为载体的在线服务,如相册 站、视频 站等等。 

 

淘宝分布式数据库 OceanBase

OceanBase是一个支持海量数据的高性能分布式数据库系统,实现了数千亿条记录、数百TB数据上的跨行跨表事务,由淘宝核心系统研发部、运维、DBA、广告、应用研发等部门共同完成。在设计和实现OceanBase的时候暂时摒弃了不紧急的DBMS的功能,例如临时表,视图(view),研发团队把有限的资源集中到关键点上,当前 OceanBase主要解决数据更新一致性、高性能的跨表读事务、范围查询、join、数据全量及增量dump、批量数据导入。
目前OceanBase已经应用于淘宝收藏夹,用于存储淘宝用户收藏条目和具体的商品、店铺信息,每天支持4~5千万的更新操作。等待上线的应用还包括CTU、SNS等,每天更新超过20亿,更新数据量超过2.5TB,并会逐步在淘宝内部推广。

分布式key/value存储系统 Tair

Tair是由淘宝 自主开发的Key/Value结构数据存储系统,在淘宝 有着大规模的应用。您在登录淘宝、查看商品详情页面或者在淘江湖和好友“捣浆糊”的时候,都在直接或间接地和Tair交互。

 

模块加载框架 SeaJS

Sea.JS 是一个遵循 CommonJS 规范的模块加载框架,可用来轻松愉悦地加载任意JavaScript模块。 SeaJS 支持的标准模块遵循 Modules/Wrappings 规范的 define 形式,可运行于 Web 浏览器以及 node.JS 等环境中。

分布式消息中间件 Metamorphosis

Metamorphosis (MetaQ) 是一个高性能、高可用、可扩展的分布式消息中间件,类似于LinkedIn的Kafka,具有消息存储顺序写、吞吐量大和支持本地和XA事务等特性,适用于大吞吐量、顺序消息、广播和日志数据传输等场景,在淘宝和支付宝有着广泛的应用,现已开源。

 

HTML5 互动游戏引擎 Hilo

Hilo 是阿里巴巴集团开发的一款HTML5跨终端游戏解决方案,ta可以帮助开发者快速创建HTML5游戏。 

 

自动化测试解决方案 Macaca

官方 站: 链接 Macaca是一套完整的自动化测试解决方案。 特性: 支持移动端和PC端;支持Native, Hybrid, H5 等多种应用类型;提供客户端工具和持续集成服务。

 

 

分布式SQL引擎 Lealone

Lealone 为 HBase 提供一个分布式SQL引擎,尝试将BigTable(HBase)和 RDBMS (H2数据库) 结合的项目。

php框架 WindFrameworkWind Framework是phpwind团队开发的一款php框架。

2010年10月份开始投入开发,目前为止已经内部发行了四个版本(0.5,0.8,0.9,1.0)。它源自phpwind 区产品的一次名为‘鹊桥’的重构计划。意在重新定义phpwind的架构层次开发模式,使其看起来更清晰,更易于扩展和二次开发。后来在一次讨论中重构计划被分为了两个部分进行。一部分为底层核心框架。另一部分为phpwind 区数据服务中心,插件组件机制。

反向代理测试套件 Macaroon

Macaroon 是一个高效的反向代理测试套件,测试框架本身基于python2.7开发,方便跨平台移植;测试例使用格式化描述,做到编程语言无关性。使用 Macaroon能够简便快捷的完成测试场景的构造、线上失效案例的重建及被测软件(DUT)的功能、模块、协议一致性测试等。
基于 Node.js 的自动化持续集成 ReliableReliable 是分布式架构的持续集成系统,由 Macaca 团队的成员开发。适用于集成构建、集成构建等场景。她是典型的主从结构,分为 reliable-master 与 reliable-slave 两部分。

 

 

跨平台移动开发工具 Weex

2016年4月21日,阿里巴巴在Qcon大会上宣布开源跨平台移动开发工具Weex,Weex能够完美兼顾性能与动态性,让移动开发者通过简捷的前端语法写出Native级别的性能体验,并支持iOS、安卓、YunOS及Web等多端部署。

Java APNS开源库 apns4j

apns4j 是 Apple Push Notification Service 的 Java 实现!

淘宝Web服务器 Tengine

Tengine是由淘宝 发起的Web服务器项目。它在Nginx的基础上,针对大访问量 站的需求,添加了很多高级功能和特性。Tengine的性能和稳定性已经在大型的 站如淘宝 ,天猫商城等得到了很好的检验。它的最终目标是打造一个高效、稳定、安全、易用的Web平台。

Web常用UI库 kissy

kissy 是淘宝一个开源的 JavaScript 库,包含的组件有:日历、图片放大镜、卡片切换、弹出窗口、输入建议等。

 

 

Nginx开发从入门到精通

消息中间件 RocketMQ

RocketMQ 是一款分布式、队列模型的消息中间件,具有以下特点:能够保证严格的消息顺序提供丰富的消息拉取模式高效的订阅者水平扩展能力实时的消息订阅机制亿级消息堆积能力Metaq3.0 版本改名,产品名称改为RocketMQ

分布式数据层 TDDL

淘宝根据自己的业务特点开发了TDDL(Taobao Distributed Data Layer 外 :头都大了 Ob)框架,主要解决了分库分表对应用的透明化以及异构数据库之间的数据复制,它是一个基于集中式配置的 jdbc datasource实现,具有主备,读写分离,动态数据库配置等功能。

 

分布式核心技术框架 Fourinone

FourInOne(中文名字“四不像”)是一个四合一分布式计算框架。

异步文件上传组件 Uploader

Uploader是非常强大的异步文件上传组件,支持ajax、iframe、flash三套方案,实现浏览器的全兼容,调用非常简单,内置多套主题支持 和常用插件,比如验证、图片预览、进度条等,广泛应用于淘宝 ,比如退款系统、爱逛街、二手、拍卖、我的淘宝、卖家中心、导购中心等。

异构数据源数据交换工具 DataX

DataX是一个让你方便的在异构数据源之间交换数据的离线同步框架/工具,实现了在任意的数据处理系统之间的数据交换,目前DataX在淘宝内部每天约有5000道同步任务分布在全天各个时段,平均每天同步数据量在2-3TB。

轻量级分布式数据访问层 CobarClient

Cobar Client是一个轻量级分布式数据访问(DAL)基于iBatis(已更名为MyBatis)和Spring框架实现。

 

 

淘宝的Linux系统 taolinux基于淘宝多年服务器优化积累, 内核优化经验。

nodejs-kissy

KISSY 是淘宝 开发的一款轻巧灵活的JS框架,如今已经是1.1.7版本,并在淘宝 广泛应用,在浏览器端给我们带来更加清新的体验,今天让我们更进一步,我们 发起了nodejs-kissy 项目,你的 KISSY 程序可以无缝移植到服务器端了 。

Dubbo 文档镜像 dubbo-doc-static

dubbo-doc-static 是 Dubbo 的文档镜像。

自动化云测试平台 AutoMan

AutoMan的前身是tCommon和TAM(taobao-automan),经过对两者不断的优化和扩展,逐步形成现在一套完整的页面自动化平台, 意在提高测试人员的测试效率,测试质量,象踏上“风火轮”那样腾挪驰骋于整个测试过程。

 

 

异步任务处理系统 TBSchedule

由原来的项目taobao-pamirs-schedule 更名为 TBSchedule 分布式哈希表 FastDHTFastDHT 是一个高性能的分布式哈希系统 (DHT) ,使用 Berkeley DB 做数据存储,使用 libevent 做 络IO处理,提供 Java 版的客户端接口包。适合用来存储用户在线、会话等小数据量信息。
异步文件上传组件 KF/Uploader支持ajax、flash、iframe三方案,兼容所有浏览器。配置简单,支持伪属性配置(data-config=’{}’)和配置属性来配置ajax和flash上传方式,带有上传进度显示队列上传,批量上传等待中的文件支持中途取消上传支持上传验证,整合kissy的validation组件不错的扩展性,自由定制按钮和队列模板样式

自动化测试任务调度平台 TOAST

TOAST(Toast Open Automation System for Test) 是一淘广告技术测试团队开发的一套自动化测试任务调度平台。 

 

阿里巴巴 开源软件列表

 

java表达式计算 QLExpress

QLExpress 是一个轻量级的类java语法规则引擎,作为一个嵌入式规则引擎在业务系统中使用。让业务规则定义简便而不失灵活。让业务人员就可以定义业务规则。支持标准的JAVA语法,还可以支持自定义操作符 、操作符 重载、 函数定义、宏定义、数据延迟加载等。 

淘宝开放平台JAVA版SDK

top4java容易维护扩展(不需要修改主类就可以 添加新的API支持)注入型解释器(依据不同的返回格式注入相应的解释器)集中管理请求参数与参数映射以运行时异常的方式来管理错误的响应使用泛型来做强类型编程多协议 扩展支持(REST, RPC, SOAP, etc)

Java 图片处理类库 SimpleImage

SimpleImage是阿里巴巴的一个Java图片处理的类库,可以实现图片缩略、水印等处理。

性能分析工具 TProfiler

TProfiler是一个可以在生产环境长期使用的性能分析工具.它同时支持剖析和采样两种方式,记录方法执行的时间和次数,生成方法热点 对象创建热点 线程状态分析等数据,为查找系统性能瓶颈提供数据支持。

代码评审工具 Tao-Review

BoardReviewBoard是一款开源的代码review工具,包括服务器端程序(reveiwboard)和客户端命令行(RBTools)。用户可以通过RBTools的一些列命令在客户端提交request,但是使用和安装都有很多不便。Tao-ReviewBoard是淘宝开发的基于eclipse的reviewboard插件,能很好的解决安装和使用的问题。这个插件已经在淘宝使用近一年,现在工具开源了共享给大家。

基于Svg的图表组件库 KCharts

KCharts是基于Svg的图表组件库,兼容IE6+等主流浏览器。基于淘宝js框架KISSY的图表组件库,包含折线图、曲线图、柱状图、散点图、饼图、地图等常用图表。采用kissy的模块加载器,实现按需加载,支持cdn动态合并。KCharts 基于RaphelJs开发,大量的html+css实现了基础grid,流畅的动画,丰富的demo,还有实用的图表在线生成器(Chart Generator),方便初学者实用。

模拟数据生成器 Mock.js

Mock.js 是一款模拟数据生成器,旨在帮助前端攻城师独立于后端进行开发,帮助编写单元测试。

表达式解析引擎 Simple EL

Simple EL是一个表达式解析引擎。它将表达式解析分成四个部分:预处理、编译、缓存和执行。这四个步骤任意一部分都可以替换,类似设计模式中的Template Method。

GUI的WEB接口管理工具 Rigel Automation

RAP Rigel Automation Platform 是一个GUI的WEB接口管理工具。在RAP中,您可定义接口的URL、请求&响应细节格式等等。通过分析这些数据,RAP提供MOCK服务、测试服务等自动化工具。RAP同时提供大量企业级功能,帮助企业和团队高效的工作。

实时数据传输平台 TimeTunnel

TimeTunnel(简称TT)是一个基于thrift通讯框架搭建的实时数据传输平台,具有高性能、实时性、顺序性、高可靠性、高可用性、可扩展性等特点。

tair-client-java

tair-client-java 是淘宝 Tair 这个分布式 Key/Value 存储系统的 Java 客户端开发包。
Tair的java客户端使用纯java开发,底层使用mina 通信框架,接口简洁易用。经过生产环境的压力测试,稳定可靠。

富逻辑的模板引擎 xtemplate.

jsxtemplate 是独立的富逻辑模板引擎,基于浏览器和 Node.js 的可扩展的模板引擎库。

xtemplate 支持异步控制和继承,包括逻辑表达式,自定义函数等等。

Nginx的TFS模块 nginx-tfs

nginx-tfs 是 Nginx 的扩展模块用于访问淘宝的 TFS 文件系统。这个模块实现了TFS的客户端,为TFS提供了RESTful API。TFS的全称是Taobao File System,是淘宝开源的一个分布式文件系统。

redis的java客户端 Tedis

Tedis是另一个redis的java客户端,Tedis的目标是打造一个可在生产环境直接使用的高可用Redis解决方案。

数据中间层 nQuery

nQuery 引擎是来自阿里的数据中间层,主要为应对大数据场景的在线查询的三大难题:长数据、宽数据、杂数据, 广泛参考 Big Query、Impala、 PL/SQL、MySQL 、PgSQL、ql.io 等,结合自身业务特点,自行精心 设计、实现的一套类SQL 语言(nSQL)及解析、执行引擎,它有着广泛的应用场景与很强的实用 价值,能对 *SQL 型数据库提供翻译与兼容,对K/V 数据如HBase、OTS 或其他通用的数据源, 它可以作为一个简洁强大的SQL 查询引擎,并以扩展SQL 的创新方式来支持数据JOIN, 结合 NodeJS 框架,完全可以提供统一的SQL接口的高并发、高性能的的在线查询服务,解耦前后端, 极大的降低大数据场景下产品开发复杂度。

持久配置中心 diamond

diamond 是持久配置中心,支持各种持久信息(比如各种规则,数据库配置等)的发布和订阅。

支持缓存线程池的ThreadLocal Transmittable ThreadLocal(TTL)在ThreadLocal的需求场景即是TTL的潜在需求场景,如果你的业务需要『在使用线程池等会缓存线程的组件情况下传递ThreadLocal』则是TTL目标场景。

代理服务器 AnyProxy

AnyProxy 是一个基于 Node.js 的代理服务器。代理服务器是个中间人,站在了客户端和服务端中间,双方通信的每个比特,都会滴水不漏地经过它。它控制了完整的请求头、请求体、响应头、响应体,可以在客 户端与服务端都无感知的情况下介入处理所有的流程。只要代理服务器可以实现灵活配置,前端工程师们的奇葩需求就有出头之日了。

DSL语法解析器生成器 dropincc.java

  • 一个简单、好用的语法解析器生成器;

  • 专为java语言环境下,实施DSL方案而设计;

  • 特点:使用纯java语法(Fluent Interface)制定用户的词法、语法规则;jdk1.6 compiler API动态编译为字节码;自动管理字节码、用户无需关心具体生成的解析器源码;专为DSL打造,相对与使用其它常见工具(javacc, antlr等)做DSL解析,代码量急剧下降;上手较为容易,让用户更加关注自身业务内容

  • 需要jdk1.6或以上版本运行,无任何其它依赖

  • 识别LL(*)语法

mysql 代理 myrelay

mysql的代理,支持如下特性:

  • 采用事件驱动、异步、非阻塞的设计模式,性能优秀

  • 采用mysql原生协议,对应用层透明

  • 支持mysql读写分离

  • 提供mysql连接池管理

  • 支持mysql冗余、健康检查

  • 提供mysql的查询日志,方便对应用层进行分析

  • 支持mysql配置动态加载

  • C语言实现

nginx-http-sysguard

nginx-http-sysguard 是阿里巴巴开发的一个 Nginx 模块,用来保护运行 Nginx 服务器的系统负载和内存使用不会太高。

 

原文链接

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2016年5月21日
下一篇 2016年5月21日

相关推荐