百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 编程字典 > 正文

盘点阿里巴巴 34 个牛逼 GitHub 项目

toyiye 2024-06-06 22:12 14 浏览 0 评论

随着产品的迭代、用户的增长,国内互联网大厂技术团队会面临各种各样的问题。为了提高研发效率,防止重复劳动,不少大厂都针对自己的业务造起了轮子。当形成一套成熟的解决方案后,不少公司会把这套方案开源出来。
毕竟: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 (Star:19.7k)
基于 Java 生成 Excel 比较有名的框架有 Apache poi、jxl ,但他们都存在一个严重的问题:耗内存。
easyexcel 重写了 poi 对 07 版 Excel 的解析,大大降低了内存功耗,不会出现内存溢出的异常。
地址:https://github.com/alibaba/easyexcel

NINE. Nginx开发从入门到精通 (Star: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 构建效率的工作方式。
项目地址:https://fusion.design/
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 使用,可以用它来绘制页面与页面之间的逻辑图,帮助你了解产品架构,业务流程。
地址:http://ux.ant.design/
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 框架动效解决方案,这个项目也是蚂蚁金服团队开发的,提供了单项,组合动画,以及整套解决方案,帮助开发者更容易的在项目中使用动效。
地址:https://motion.ant.design/
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基金会。
地址:https://github.com/alibaba/jstorm
SimpleImage: 一个Java图片处理的类库,包含功能有图片缩略、水印等。
地址:https://github.com/alibaba/simpleimage
Tedis:redis 的 java 客户端
地址:https://github.com/justified/tedis
SOFARPC:高性能 Java RPC 框架
地址:https://github.com/alipay/sofa-rpc
P3C:Java 代码规约扫描插件,IntelliJ IDEA 搜索这款插件安装,时刻监控你写的代码规不规范。
地址:https://github.com/alibaba/p3c

AliSQL:开源数据库,适合电商、云计算以及金融等行业环境。
地址:https://github.com/alibaba/AliSQL
OceanBase:分布式数据库。
地址:https://github.com/alibaba/oceanbase
FastDFS:分布式文件系统 。功能包括:文件存储、文件同步、文件访问,特别适合以文件为载体的在线服务,如相册网站、视频网站等等。
地址:https://github.com/happyfish100/fastdfs
Apache RocketMQ:RocketMQ 是一款分布式、队列模型的消息中间件,具有以下特点。
地址:https://github.com/apache/rocketmq/
Metamorphosis:分布式消息中间件。这是一个高性能、高可用、可扩展的分布式消息中间件。
地址:https://github.com/killme2008/Metamorphosis
Tengine:淘宝 Web 服务器。在Nginx的基础上,针对大访问量网站的需求,添加了很多高级功能和特性。
地址:https://github.com/alibaba/tengine
TFS:分布式文件系统。这是一个高可扩展、高可用、高性能、面向互联网服务的分布式文件系统。
地址:https://github.com/alibaba/tfs

相关推荐

为何越来越多的编程语言使用JSON(为什么编程)

JSON是JavascriptObjectNotation的缩写,意思是Javascript对象表示法,是一种易于人类阅读和对编程友好的文本数据传递方法,是JavaScript语言规范定义的一个子...

何时在数据库中使用 JSON(数据库用json格式存储)

在本文中,您将了解何时应考虑将JSON数据类型添加到表中以及何时应避免使用它们。每天?分享?最新?软件?开发?,Devops,敏捷?,测试?以及?项目?管理?最新?,最热门?的?文章?,每天?花?...

MySQL 从零开始:05 数据类型(mysql数据类型有哪些,并举例)

前面的讲解中已经接触到了表的创建,表的创建是对字段的声明,比如:上述语句声明了字段的名称、类型、所占空间、默认值和是否可以为空等信息。其中的int、varchar、char和decimal都...

JSON对象花样进阶(json格式对象)

一、引言在现代Web开发中,JSON(JavaScriptObjectNotation)已经成为数据交换的标准格式。无论是从前端向后端发送数据,还是从后端接收数据,JSON都是不可或缺的一部分。...

深入理解 JSON 和 Form-data(json和formdata提交区别)

在讨论现代网络开发与API设计的语境下,理解客户端和服务器间如何有效且可靠地交换数据变得尤为关键。这里,特别值得关注的是两种主流数据格式:...

JSON 语法(json 语法 priority)

JSON语法是JavaScript语法的子集。JSON语法规则JSON语法是JavaScript对象表示法语法的子集。数据在名称/值对中数据由逗号分隔花括号保存对象方括号保存数组JS...

JSON语法详解(json的语法规则)

JSON语法规则JSON语法是JavaScript对象表示法语法的子集。数据在名称/值对中数据由逗号分隔大括号保存对象中括号保存数组注意:json的key是字符串,且必须是双引号,不能是单引号...

MySQL JSON数据类型操作(mysql的json)

概述mysql自5.7.8版本开始,就支持了json结构的数据存储和查询,这表明了mysql也在不断的学习和增加nosql数据库的有点。但mysql毕竟是关系型数据库,在处理json这种非结构化的数据...

JSON的数据模式(json数据格式示例)

像XML模式一样,JSON数据格式也有Schema,这是一个基于JSON格式的规范。JSON模式也以JSON格式编写。它用于验证JSON数据。JSON模式示例以下代码显示了基本的JSON模式。{"...

前端学习——JSON格式详解(后端json格式)

JSON(JavaScriptObjectNotation)是一种轻量级的数据交换格式。易于人阅读和编写。同时也易于机器解析和生成。它基于JavaScriptProgrammingLa...

什么是 JSON:详解 JSON 及其优势(什么叫json)

现在程序员还有谁不知道JSON吗?无论对于前端还是后端,JSON都是一种常见的数据格式。那么JSON到底是什么呢?JSON的定义...

PostgreSQL JSON 类型:处理结构化数据

PostgreSQL提供JSON类型,以存储结构化数据。JSON是一种开放的数据格式,可用于存储各种类型的值。什么是JSON类型?JSON类型表示JSON(JavaScriptO...

JavaScript:JSON、三种包装类(javascript 包)

JOSN:我们希望可以将一个对象在不同的语言中进行传递,以达到通信的目的,最佳方式就是将一个对象转换为字符串的形式JSON(JavaScriptObjectNotation)-JS的对象表示法...

Python数据分析 只要1分钟 教你玩转JSON 全程干货

Json简介:Json,全名JavaScriptObjectNotation,JSON(JavaScriptObjectNotation(记号、标记))是一种轻量级的数据交换格式。它基于J...

比较一下JSON与XML两种数据格式?(json和xml哪个好)

JSON(JavaScriptObjectNotation)和XML(eXtensibleMarkupLanguage)是在日常开发中比较常用的两种数据格式,它们主要的作用就是用来进行数据的传...

取消回复欢迎 发表评论:

请填写验证码