盘点阿里巴巴 34 个牛逼 GitHub 项目
随着产品的迭代、用户的增长,国内互联网大厂技术团队会面临各种各样的问题。为了提高研发效率,防止重复劳动,不少大厂都针对自己的业务造起了轮子。当形成一套成熟的解决方案后,不少公司会把这套方案开源出来。
毕竟:talk is cheap,show me the code。
阿里在开源方面非常重视,开源了很多优秀的项目,遍布数据库、分布式、中间件、服务器、前端等领域。甚至有的项目在某个领域一枝独秀,今天来就来盘点一下阿里巴巴开源的 34 个项目。
ONE. Arthas(Star:25.6k)
Arthas 是阿里巴巴开源的 Java 诊断工具,深受开发者喜爱,在 GitHub 上已经有 25.6K Star 了。
这个诊断工具可以帮助开发人员或者运维人员查找问题,分析性能,bug 追踪。为了方便程序员快手上手,该工具也提供了用户文档:
开源:https://github.com/alibaba/arthas
文档:https://arthas.aliyun.com/doc/
TWO. Fastjson (Star 23.3k)fastjson 是一个 Java 库,可将 Java 对象转换为其 JSON 表示形式。它也可以用于将 JSON 字符串转换为等效的 Java 对象。
相对其他 JSON 库,fastjson 的优点是快,从 2011 年 fastjson 发布第一个版本后,其性能从未被其他 JSON 库超越。
由于是阿里开源,fastjson 在阿里巴巴内部大规模使用,在数万台服务器上部署。fastjson 在业界也被广泛接受。曾经被开源中国评选为最受欢迎的国产开源软件之一。
开源地址:github.com/alibaba/fastjson
帮助文档:github.com/alibaba/fastjson/wiki/Quick-Start-CN
THREE. Druid (Star:23.8k)
Druid 是一款强大的数据库连接池,相比 Spring 推荐的 DBCP 和 hibernate 推荐的 C3P0、Proxool 数据库连接池,Druid 在市场上有一定优势;它支持以下功能:
监控数据库访问性能。
提供了一个高效、功能强大、可扩展性好的数据库连接池。
?数据库密码加密。
?SQL 执行日志。
开源地址:https://github.com/alibaba/druid
帮助文档:https://github.com/alibaba/druid/wiki
FOUR. Ant Design (Star:6.4K)
Ant Design 是蚂蚁金服开源的一套企业级的前端设计语言和基于 React 的前端框架实现。
蚂蚁团队经过大量的项目实践和总结,沉淀出一个前端框架 Ant Design。旨在统一项目的前端 UI 设计,屏蔽不必要的设计差异和实现成本,解放设计和前端的研发资源。
它有丰富实用的 React UI 组件;基于 React 的组件化开发模式;背靠 npm 生态圈;基于 webpack 的调试构建方案,支持 ES6。
地址:https://github.com/ant-design/ant-design
文档:https://ant.design/docs/react/introduce-cn
FIVE. Spring Cloud Alibaba(Star:18.5k)
Spring Cloud Alibaba 是微服务开发一站式解决方案,可以帮助阿里巴巴开源中间件与 Spring Cloud 体系更好的融合。
使用该开源项目,你的团队只需要添加一些注解和少量配置,就可以将 Spring Cloud 应用接入阿里分布式应用解决方案,通
过阿里中间件来迅速搭建分布式应用系统。
地址:https://github.com/spring-cloud-incubator/spring-cloud-alibaba
SIX. SOFABoot**(Star:4.2k)**
这个项目是蚂蚁金服团队开源的基于 Spring Boot 的研发框架,它在 Spring Boot 的基础上,扩展了其他功能,比如:类隔离、日志空间隔离等等。
地址:https://github.com/alipay/sofa-boot
SEVEN. Dubbo (Star:35.1k)
Dubbo 是阿里巴巴的一款高性能、轻量级的开源 Java RPC 框架,可以和 Spring 框架无缝集成。
它提供了三大核心能力:面向接口的远程方法调用,智能容错和负载均衡,以及服务自动注册和发现。
地址:https://github.com/alibaba/dubbo
文档:https://dubbo.apache.org/zh/
EIGHT. Easyexcel (St****ar:19.7k)
基于 Java 生成 Excel 比较有名的框架有 Apache poi、jxl ,但他们都存在一个严重的问题:耗内存。
easyexcel 重写了 poi 对 07 版 Excel 的解析,大大降低了内存功耗,不会出现内存溢出的异常。
地址:https://github.com/alibaba/easyexcel
NINE. Nginx 开发从入门到精通?(St****ar:6.1k)
Nginx 是一个很强大的 Web 和反向代理服务,它能够实现反向代理、动静分离、负载均衡、跨域处理。性能也非常出色,深受开发者关注。
向其他互联网大厂一样,Nginx 在淘宝内部也广泛的使用,但当时国内没有这方面的书籍,于是淘宝的工程师们自己写了一本。
《Nginx 开发从入门到精通》这本开源书籍从模块开发逐渐过渡到 nginx 原理剖析,是一本不错的入门到进阶的 Nginx 指南。
地址:https://github.com/taobao/nginx-book
TEN.其他开源项目
除此之外,还有其他优秀的开源项目,领域涉及前端、大数据、分布式系统、UI 等等。
**AntV - G2:**数据驱动的高交互可视化图形语法,一条语句即可构建出各种各样的可交互的统计图表。
项目地址:https://github.com/antvis/g2
**Fusion Design:**企业级中后台 UI 解决方案,旨在提升设计与开发之间 UI 构建效率的工作方式。
**BizCharts:**基于 G2 封装的 React 图表库,数据可视化项目可能会用到。
地址:https://github.com/alibaba/BizCharts
**Egg:**5 企业级 Node.js 框架?
地址:https://github.com/eggjs/egg
**umi:**基于 React 的前端框架?
地址:https://github.com/umijs/umi
**Dawn:**前端构建和工程化工具,阿里云·业务运营团队内部的前端构建和工程化工具,简化并统一了开发人员的日常构建与开发相关的工作。
地址:https://alibaba.github.io/dawn/
**Ant UX:**页面逻辑原型 。配合工具: OmniGraffle ,Sketch 使用,可以用它来绘制页面与页面之间的逻辑图,帮助你了解产品架构,业务流程。
**G3D:**一个基于 WebGL 的 Javascript 3D 绘图引擎
地址:https://alibaba.github.io/G3D/
**Weex:**跨平台移动开发工具。
地址:https://github.com/apache/incubator-weex/
**Weex Ui:**基于 Weex 的 UI 组件库?
地址:https://github.com/alibaba/weex-ui
**Ant Motion:**动效语言 & React 框架动效解决方案,这个项目也是蚂蚁金服团队开发的,提供了单项,组合动画,以及整套解决方案,帮助开发者更容易的在项目中使用动效。
**Hilo:**HTML5 互动游戏引擎。这个项目可以帮助开发者快速创建 HTML5 游戏。
地址:https://github.com/hiloteam/Hilo
**Velocity.js:**JavaScript 模板引擎
地址:https://github.com/shepherdwind/velocity.js
**React Web:**通过与 React Native 一致的 API 构建 Web 应用。
地址:https://github.com/taobaofed/react-web
**Mock.js:**模拟数据生成器,帮助前端开发者独立于后端进行开发,帮助编写单元测试。
地址:https://github.com/nuysoft/Mock
**noForm:**基于 React 的表单解决方案。
地址:https://github.com/alibaba/noform
**JStorm:**企业级流式计算引擎?,可以把它看作是 storm 的 java 增强版本,在阿里巴巴的场景下验证后新增了诸多新特性,整体性能指标上有 20%以上提升。
2015 年 11 月 19 日,阿里巴巴将 JStorm 捐献给 Apache 基金会。
评论