阿里巴巴开源技术汇总:115个软件(三)

本文涉及的产品
云数据库 Redis 版,社区版 2GB
推荐场景:
搭建游戏排行榜
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
简介: Hi~大家好,第三期阿里开源技术汇总又和大家见面了!在这一期中我们又给大家带来了20个项目的介绍,保证能让你们看得大呼过瘾。准备好了吗?现在就让我们跟随云栖社区一起看看在这期的文章里出现的哪些新鲜刺激的开源项目吧!

Hi~大家好,第三期阿里开源技术汇总又和大家见面了!在这一期中我们又给大家带来了20个项目的介绍,保证能让你们看得大呼过瘾。准备好了吗?现在就让我们跟随云栖社区一起看看在这期的文章里出现的哪些新鲜刺激的开源项目吧!

1.Weex

【项目简介】

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

【架构图】


abce0c3d41ad8f3c4e18c8f64af9fb6271e3af7c

【官网地址】 http://alibaba.github.io/weex



2.Apns4j

【项目简介】
apns4j 是 Apple Push Notification Service 的 Java 实现,目前1.0.1版已经发布。
【源码托管地址】 https://github.com/teaey/apns4j

3.BugFree

【项目简介】

BugFree 是一款借鉴微软公司软件研发理念、免费且开放源代码、基于Web的精简版Bug管理系统。BugFree基于PHP和MySQL开发,其服务器端在Linux和Windows平台上都可以运行;客户端也无需安装任何软件,通过IE,FireFox等浏览器就可以自由使用。使用这款软件,企业可以保证质量、控制进度,并使产品可持续发展。

【架构图】


becc5217c2dc074f5f40534dffbdc74fe8977df5

【源码托管地址】https://github.com/taobao/BugFree



4.TDDL

【项目简介】
TDDL(Taobao Distributed Data Layer),是淘宝根据自己的业务特点开发了框架,主要解决了分库分表对应用的透明化以及异构数据库之间的数据复制,它是一个基于集中式配置的 jdbc datasource实现,具有主备,读写分离,动态数据库配置等功能。它具有以下优点:
1.数据库主备和动态切换2.带权重的读写分离3.单线程读重试4.集中式数据源信息管理和动态变更5.剥离的稳定jboss数据源6.支持mysql和oracle数据库7.基于jdbc规范,很容易扩展支持实现jdbc规范的数据源8.无server,client-jar形式存在,应用直连数据库9.读写次数,并发度流程控制,动态变更10.可分析的日志打印,日志流控,动态变更。

【架构图】


c0da3ca82d757b5a144b10ffebebd809a8739d98

【源码托管地址】 https://github.com/alibaba/tb_tddl



5.PHPWind

【项目简介】

PHPWind是阿里开发的一套论坛系统。它采用 php+mysql 数据库,运行并可生成 html 页面的全新且完善的强大系统。它具有网站统筹化、技术专业化、友好人性化三大特点,出色的访问速度和卓越的负载能力更令它深受国内外朋友的喜爱。

【源码托管地址】 https://github.com/alibaba/phpwind


6.TFS

【项目简介】

TFS(Taobao FileSystem)是一个高可扩展、高可用、高性能、面向互联网服务的分布式文件系统,其设计目标是支持海量的非结构化数据。目前,国内自主研发的文件系统可谓凤毛麟角。淘宝在这一领域做了有效的探索和实践,Taobao File System(TFS)作为淘宝内部使用的分布式文件系统,针对海量小文件的随机读写访问性能做了特殊优化,承载着淘宝主站所有图片、商品描述等数据存储。

【架构图】


7007ed6d3e77ea7c6314e57eff10de0b4ab08b35

【源码托管地址】 https://github.com/alibaba/tfs


7.Webx

【项目简介】

Webx是建立在Java Servlet API基础上的通用WEB框架。用Webx搭建的应用可以运行在任何一个标准的WEB应用服务器上面:Tomcat、Jetty、Jboss、Weblogic。 Webx是基于经典MVC设计模式的WEB框架Spring,并且可以被其它组件扩展。Webx不仅能够用来开发高度可定制的Web应用,也能够用来帮助用户开发高度可扩展的非WEB的应用。目前Webx在阿里巴巴集团内部被广泛使用。

【架构图】


53818cfb6164e6f31d68c83f7f561c84be89a49f

【源码托管地址】 https://github.com/webx/citrus


8.FourInOne

【项目简介】

FourInOne(中文名字“四不像”)是一个四合一分布式计算框架。它提供了四合一的分布式框架功能(即整合了Hadoop、Zookeeper、MQ、分布式缓存的主要功能)和简单易用的编程API,从而实现了对多台计算机CPU、内存、硬盘的统一利用,最终获取到强大计算能力去解决复杂问题。

【架构图】


6058a976eca7317df4bf883cbddd199b2400d3bf

【源码托管地址】 http://git.oschina.net/fourinone/fourinone


9.Uploader

【项目简介】

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

【架构图】


3a53211f24ed1613b319a0269e61ea3715bdfa67

【源码托管地址】 https://github.com/kissygalleryteam/uploader


10.DataX

【项目简介】

DataX 是阿里巴巴集团内被广泛使用的离线数据同步工具/平台,实现包括 MySQL、Oracle、HDFS、Hive、OceanBase、HBase、OTS、ODPS 等各种异构数据源之间高效的数据同步功能。目前DataX在淘宝内部每天约有5000道同步任务分布在全天各个时段,平均每天同步数据量在2-3TB。

【架构图】


c612ff4d4d64c1077e1136435a169a891ff14bc1

【源码托管地址】 https://github.com/alibaba/DataX


11.Httpsender

【项目简介】

httpsender是一款轻量级的http压力测试工具,由淘宝的测试工程师用Java语言开发完成。它可以指定并发连接数发送指定数目的请求,还可以自定义请求的header头。请求的URL支持通过正则表达式指定范围,同时也支持从文件随机或顺序读取。它还具备验证数据是否完整和错乱等较高级的功能。默认应用环境为Linux。

【源码托管地址】http://dl.dbank.com/c0vxx27aa5


12.CobarClient

【项目简介】

CobarClient是一个基于iBatis和Spring的轻量级分布式数据访问框架(DDAL)。它具有一些特点:主要特性:
①可以支持垂直和水平数据切分数据库集群的访问;
②支持双机热备的HA解决方案, 应用方可以根据情况选用数据库特定的HA解决方案(比如Oracle的RAC),或者选用CobarClient提供的HA解决方案.
③小数据量的数据集计(Aggregation), 暂时只支持简单的数据合并.
④数据库本地事务的支持, 目前采用Best Efforts 1PC模式的事务管理.
⑤数据访问操作相关SQL的记录, 分析等.(可以采用国际站现有Ark解决方案,但CobarClient提供扩展的切入接口)

【架构图】


62026dd9ac453e7238812d58a478a3601e49ab27

【源码托管地址】 https://github.com/alibaba/cobarclient


13.F2etest 

【项目简介】

F2etest是一个面向前端、测试、产品等岗位的多浏览器兼容性测试整体解决方案。通过在项目中采用开源的HTML5远程解决方案Guacamole、Server版Windows和跨浏览器、跨服务器的hosts共享技术hostsShare,F2etest最终实现了以下的功能:
①硬件利用率提高10倍以上,降低了企业运营成本
②提供极佳的用户体验,因而提高了测试效率
③提供真实浏览器环境,还原真实测试场景

【架构图】


5d13cdb4c67a9bd23b04b596478ef42dbbb3fea4

【源码托管地址】 https://github.com/alibaba/f2etest



14.AliRedis 

【项目简介】

AliRedis是阿里团队针对Redis日常维护中出现的不足而在Redis原有基础上做出的深度改进。具体而言,AliRedis采用多线程master + N*work 工作模式,并且抛弃save, bgsave, aof等三种原有的模式.采用redisDB lock模式,除此之外,它还优化了jemalloc, 采用大内存页。

【架构图】


a04023731884ef5635207f6c1a66b4c3d80df8a1




15.Canal 

【项目简介】

Canal是纯Java开发的数据异地同步工具。它能够提供的基于日志增量订阅和消费支持的业务有:
①数据库镜像
②数据库实时备份
③多级索引 (卖家和买家各自分库索引)
④search build
⑤业务cache刷新
⑥价格变化等重要业务消息
目前Canal主要支持了mysql。

【架构图】


161b1ea8a7ab832ec8be5017f3a3fcfcc4568291

【源码托管地址】 https://github.com/alibaba/canal


16.Taocode

【项目简介】

taocode(淘蝌蚪)是淘宝网推出的开源平台。它具有平台化和社区化两个特征。
1).平台化
a) 完善项目管理过程工具平台
b) 提供更多代码级工具
c) 提供更多文档化工具
2).社区化
a). 提供更好的交流平台
b). 增加更多的持续性生态化平台功能

【架构图】


86f80d5643fe43201e1d71e620bb0316be701a58

【官网】http://code.taobao.org/


17.JStorm

【项目简介】

Storm 是一个类似Hadoop MapReduce的系统。如果用户按照指定的接口实现一个任务,然后将这个任务递交给JStorm系统,Jstorm将这个任务跑起来,并且按7 * 24小时运行起来,一旦中间一个worker 发生意外故障, 调度器立即分配一个新的worker替换这个失效的worker。因此,从应用的角度,JStorm 应用是一种遵守某种编程规范的分布式应用。从系统角度, JStorm一套类似MapReduce的调度系统。 从数据的角度, 是一套基于流水线的消息处理机制。

【架构图】


d3c93c463b1b8669e336523b7f1539fe9bc96d51

【源码托管地址】 https://github.com/alibaba/jstorm


18.Athrun

【项目简介】

Athrun以Mobile自动化为基础,以PC2Mobile为切入点,是淘宝Mobile测试日常工作必备的平台。目前Athrun支持:
①Android上的自动化测试,包括自动化测试框架,持续集成体系。覆盖率工具和自动录制回放工具,也在试用完善中。
②iOS上的自动化测试,包括注入式自动化框架AppFramework,和基于录制的非注入式自动化框架Athrun_IOS,还有持续集成体系。目前两个框架在淘宝测试内都有用户群,都还在不断使用和演进过程中。AppFramework将会支持socket通信方式。

【源码托管地址】 http://code.taobao.org/p/athrun/src/


19.Cobar

【项目简介】

Cobar是提供关系型数据库(MySQL)分布式服务的中间件,它可以让传统的数据库得到良好的线性扩展,并看上去还是一个数据库,对应用保持透明。自Cobar实际投入运用以来,它接管了3000+个MySQL数据库的schema,集群日处理在线SQL请求50亿次以上。
集群日处理在线数据流量TB级别以上,并且到目前为止,该产品在阿里巴巴稳定运行3年以上。

【架构图】


7149bbafbe1535e5ef938061ec7c974a8778d6ae

【源码托管地址】 https://github.com/alibaba/cobar


20.TaoLinux

【项目简介】

TaoLinux是淘宝团队基于淘宝多年服务器优化积累, 内核优化经验对Linux做出的改版。它默认安装tengine等服务 没有GUI界面 基于RHEL 6.2。

【源码托管地址】 http://code.taobao.org/p/taobao_linux_server


【相关链接】

阿里巴巴开源技术汇总:115个软件(一)
阿里巴巴开源技术汇总:115个软件(二)
阿里巴巴开源技术汇总:115个软件(三)
阿里巴巴开源技术汇总:115个软件(四)
阿里巴巴开源技术汇总:115个软件(五)
阿里巴巴开源技术汇总:115个软件(六)


【云栖社区】:对于开源的内容选题,我们也有最新的规划。欢迎对阿里技术开源感兴趣的社区/社群、媒体伙伴和技术开发者,联系社区,一起打造。有意者,可邮件:yqeditor@list.alibaba-inc.com ,邮件主题标注:开源选题策划

目录
相关文章
业界新标杆!阿里开源自研高并发编程核心笔记(2023最新版)
提到并发编程很多人就会头疼了;首先就是一些基础概念:并发,并行,同步,异步,临界区,阻塞,非阻塞还有各种锁全都砸你脸上,随之而来的就是要保证程序运行时关键数据在多线程中的可见性、核心业务的原子性、多线程通信的有序性。虽然很多人工作可能接触不到这些的东西,但是面试就是得问。假如你跟一个有过高并发编程经验的人一起面试同一个岗位,你就是背了些面试题,而人家是确确实实有真东西的,那后续的录用结果想必就不用我多说了吧~
|
弹性计算 文字识别 负载均衡
阿里云/集团产品与开源社区软件
目前很多中小企业基本都是基于开源方案来构建自己的信息化体系,对应阿里云/集团内部产品基本上都有开源的产品,本文主要是讲解阿里云/集团内部产品对应的开源实现,如有不对请指正。1. ECS云服务器 ECS(Elastic Compute Service)是一种安全可靠、弹性可伸缩的云计算服务,助您降低 IT 成本,提升运维效率。产品地址:https://www.aliyun.com/product/e
|
Kubernetes Cloud Native 容灾
开源是基础设施最佳开发方式 | GOTC 全球开源技术峰会
“开源”技术盛宴——GOTC 全球开源技术峰会圆满落幕 杨冰分享OceanBase 开源的发展历程 指出基础设施建设坚持开源与开放的重要性 想了解行业趋势的童鞋们快来码住
开源是基础设施最佳开发方式 | GOTC 全球开源技术峰会
|
运维 数据可视化 Cloud Native
阿里巴巴专家教你如何在家安全高效开发软件
为响应国家号召,各“大厂”纷纷发出在家办公,延迟上班的通知,一时间“在线协同办公”成为热点。不同于大型集团公司,有足够财力和能力构建远程办公系统,中小企业既缺乏足够的预算又缺乏相应的经验。阿里云云效一直致力于成为数字企业的研发效能引擎,在这个特殊时期,我们希望可以将自己的经验和工具分享给中小企业,让他们在家也能安全高效地开发软件。
阿里巴巴专家教你如何在家安全高效开发软件
2017年阿里开源了14个核心技术,你了解哪些?- 测试
在开源中国举行的“2017年度最受欢迎中国开源软件Top20”的评选中,阿里巴巴占据五席位。
773 0
|
应用服务中间件 Dubbo Java
2017年阿里开源了14个核心技术,你了解哪些?
阿里妹导读:自从2011年宣布第一波开源项目以来,阿里技术人一直积极参与开源社区共建。开源项目数量每年都有所增长,目前阿里巴巴已经有150+个开源项目,其中数个项目 star 破万。相关的 GitHub 2017年数据统计显示,阿里巴巴是唯一一家入围 GitHub 顶尖贡献名单的中国公司。
10587 0
2017年阿里开源了14个核心技术,你了解哪些?
|
JavaScript NoSQL 物联网
阿里开源了14个核心技术,你了解哪些?
自从2011年宣布第一波开源项目以来,阿里技术人一直积极参与开源社区共建。开源项目数量每年都有所增长,目前阿里巴巴已经有150+个开源项目,其中数个项目 star 破万。相关的 GitHub 2017年数据统计显示,阿里巴巴是唯一一家入围 GitHub 顶尖贡献名单的中国公司。
16777 1
|
新零售 安全 Linux
沸腾!阿里又开源了一项自研核心技术!
近日,阿里正式开源了基于 Apache 2.0 协议的容器技术 Pouch。Pouch 是一款轻量级的容器技术,拥有快速高效、可移植性高、资源占用少等特性,主要帮助阿里更快的做到内部业务的交付,同时提高超大规模下数据中心的物理资源利用率。
5134 0
|
关系型数据库 pouch 容器
12月5日云栖精选夜读:沸腾!阿里又开源了一项自研核心技术!
近日,阿里正式开源了基于 Apache 2.0 协议的容器技术 Pouch。Pouch 是一款轻量级的容器技术,拥有快速高效、可移植性高、资源占用少等特性,主要帮助阿里更快的做到内部业务的交付,同时提高超大规模下数据中心的物理资源利用率。
4238 0