阿里巴巴top10的开源项目列表以及用途(阿里巴巴 开源项目)

阿里巴巴github开源项目有394个,全中国共享代码最多的公司,阿里的大佬程序员真的是层出不穷啊,尤其是java程序猿最多。量多,质量好,免费开源。下面来看看star排名前10的开源项目以及其特点。

阿里巴巴top10的开源项目列表以及用途(阿里巴巴 开源项目)

alibaba开源仓库总数394

排名第10的是Sentinel。star个数20,660 , 主要开发语言java

Sentinel 是面向分布式服务架构的高可用流量防护组件,主要以流量为切入点,从限流、流量整形、熔断降级、系统负载保护、热点防护等多个维度来帮助开发者保障微服务的稳定性。

阿里巴巴top10的开源项目列表以及用途(阿里巴巴 开源项目)

Sentinel 具有以下特性:

  • 丰富的应用场景:Sentinel 承接了阿里巴巴近 10 年的双十一大促流量的核心场景,例如秒杀(即突发流量控制在系统容量可以承受的范围)、消息削峰填谷、集群流量控制、实时熔断下游不可用应用等。
  • 完备的实时监控:Sentinel 同时提供实时的监控功能。您可以在控制台中看到接入应用的单台机器秒级数据,甚至 500 台以下规模的集群的汇总运行情况。
  • 广泛的开源生态:Sentinel 提供开箱即用的与其它开源框架 / 库的整合模块,例如与 Spring CloudDubbo、gRPC 的整合。您只需要引入相应的依赖并进行简单的配置即可快速地接入 Sentinel。
  • 完善的 SPI 扩展点:Sentinel 提供简单易用、完善的 SPI 扩展接口。您可以通过实现扩展接口来快速地定制逻辑。例如定制规则管理、适配动态数据源等。

阿里巴巴top10的开源项目列表以及用途(阿里巴巴 开源项目)

排名第9的是flutter-go . star个数23,268 ,主要开发语言dart,目前停更

2018年6月21日Google发布Flutter首个release预览版,作为Google 大力推出的一种全新的响应式,跨平台,高性能的移动开发框架。Flutter是一个跨平台的移动UI框架,旨在帮助开发者使用一套代码开发高性能、高保真的Android和iOS应用。

flutter优点主要包括:

  • 跨平台
  • 开源
  • Hot Reload、响应式框架、及其丰富的控件以及开发工具
  • 灵活的界面设计以及控件组合
  • 借助可以移植的GPU加速的渲染引擎以及高性能ARM代码运行时已达到高质量的用户体验

Flutter Go 的由来

flutter 开发者帮助 APP,包含 flutter 常用 140 组件的demo 演示与中文文档

  • Flutter学习资料太少,对于英文不好的同学相对来说比较困难
  • 官网文档示例不够健全,不够直观
  • 各个 widget 的用法各异,属性纷繁,要运行一个 widget 的 demo 往往要到处翻阅各种资料

Flutter Go 的优势

  • 详解常用widget多达 140 个
  • 配套 Demo 详解 widget 常规用法
  • 集中整合 widget 案例,一个 APP 搞定所有常用 widget 的用法
  • 持续迭代 ‘追新’ 官方版本

阿里巴巴top10的开源项目列表以及用途(阿里巴巴 开源项目)

阿里巴巴top10的开源项目列表以及用途(阿里巴巴 开源项目)

排名第8的是spring-cloud-alibaba, star个数24,996,主要开发语言Java

这个是大家用得最多的组件了,名不虚传,实至名归.

Spring Cloud Alibaba 致力于提供微服务开发的一站式解决方案。此项目包含开发分布式应用微服务的必需组件,方便开发者通过 Spring Cloud 编程模型轻松使用这些组件来开发分布式应用服务。

依托 Spring Cloud Alibaba,您只需要添加一些注解和少量配置,就可以将 Spring Cloud 应用接入阿里微服务解决方案,通过阿里中间件来迅速搭建分布式应用系统。

此外,阿里云同时还提供了 Spring Cloud Alibaba 企业版 微服务解决方案,包括无侵入服务治理(全链路灰度,无损上下线,离群实例摘除等),企业级 Nacos 注册配置中心和企业级云原生网关等众多产品。

阿里巴巴top10的开源项目列表以及用途(阿里巴巴 开源项目)

阿里巴巴top10的开源项目列表以及用途(阿里巴巴 开源项目)

排名第7的是fastjson,star个数25,216 ,主要开发语言java

fastJSON是阿里巴巴的开源JSON解析库,它可以解析JSON格式的字符串,支持将Java Bean序列化为JSON字符串,也可以从JSON字符串反序列化到JavaBean

阿里巴巴top10的开源项目列表以及用途(阿里巴巴 开源项目)

相信大家都用过这个了,一般大家都用他来和gson比,我用fastjson比较多一点.来看看chatgpt是怎么比较的

作为AI语言模型,我不能够有评价,但是可以为您提供它们的基本信息和功能:

Fastjson是一个Java语言编写的高性能JSON处理器,Gson是Google提供的Java开发包,它可以将Java对象转换为JSON格式,也可以将JSON字符串转换为Java对象。两者都是用于处理JSON数据的Java工具包。

Fastjson的优点是速度快、易于使用、功能强大,支持多种数据格式的转换,包括JSON、XML、Java对象等。同时,Fastjson还提供了一些高级功能,如自定义序列化和反序列化器、支持注解、支持JSONP等。

Gson的优点是稳定性好、易于使用、支持多种数据格式的转换,包括JSON、XML、Java对象等。同时,Gson还提供了一些高级功能,如自定义序列化和反序列化器、支持注解、支持JSONP等。

总体来说,Fastjson和Gson都是优秀的Java工具包,具有自己的优点和特点,根据具体需求可以选择使用。

排名第6名的是canal , star个数25,218, 主要开发语言java

canal [kə'næl],译意为水道/管道/沟渠,主要用途是基于 MySQL 数据库增量日志解析,提供增量数据订阅和消费

早期阿里巴巴因为杭州和美国双机房部署,存在跨机房同步的业务需求,实现方式主要是基于业务 trigger 获取增量变更。从 2010 年开始,业务逐步尝试数据库日志解析获取增量变更进行同步,由此衍生出了大量的数据库增量订阅和消费业务。

基于日志增量订阅和消费的业务包括

  • 数据库镜像
  • 数据库实时备份
  • 索引构建和实时维护(拆分异构索引、倒排索引等)
  • 业务 cache 刷新
  • 带业务逻辑的增量数据处理

当前的 canal 支持源端 MySQL 版本包括 5.1.x , 5.5.x , 5.6.x , 5.7.x , 8.0.x

阿里巴巴top10的开源项目列表以及用途(阿里巴巴 开源项目)

阿里巴巴top10的开源项目列表以及用途(阿里巴巴 开源项目)

排名第5的是nacos, star个数 25.686 , 主要开发语言java

Nacos /nɑ:kəʊs/ 是 Dynamic Naming and Configuration Service的首字母简称,一个更易于构建云原生应用的动态服务发现、配置管理和服务管理平台。

Nacos 致力于帮助您发现、配置和管理微服务。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据及流量管理。

Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。 Nacos 是构建以“服务”为中心的现代应用架构 (例如微服务范式、云原生范式) 的服务基础设施。

阿里巴巴top10的开源项目列表以及用途(阿里巴巴 开源项目)

阿里巴巴top10的开源项目列表以及用途(阿里巴巴 开源项目)

排名第4的是druid, star个数26,638 ,主要开发语言java

号称Druid是Java语言中最好的数据库连接池。Druid能够提供强大的监控和扩展功能。他出来之后,dbcp,c3p0都失踪了.

阿里巴巴top10的开源项目列表以及用途(阿里巴巴 开源项目)

排名第3的是easyexcel , star个数27,044,主要开发语言java

号称最方便的excel导入导出工具,用了这个之后,poi,jxl什么的全部都丢到垃圾桶了,用这个吧,因他十分强大,十分简单,十分有性能.

easyexcel重写了poi对07版Excel的解析,一个3M的excel用POI sax解析依然需要100M左右内存,改用easyexcel可以降低到几M,并且再大的excel也不会出现内存溢出;03版依赖POI的sax模式,在上层做了模型转换的封装,让使用者更加简单方便

EasyExcel是一个基于Java的、快速、简洁、解决大文件内存溢出的Excel处理工具。 他能让你在不用考虑性能、内存的等因素的情况下,快速完成Excel的读、写等功能。

阿里巴巴top10的开源项目列表以及用途(阿里巴巴 开源项目)

阿里巴巴top10的开源项目列表以及用途(阿里巴巴 开源项目)

阿里巴巴top10的开源项目列表以及用途(阿里巴巴 开源项目)

排名第二的是p3c, star个数28,883, 主要开发语言kotlin和java ,最新版黄山版

P3C是Java代码规约扫描工具。最新版本:黄山版(2022.2.3发布)

P3C旨在以工具的手段进行代码规约的落地,项目包含三部分:PMD规则实现、IntelliJ IDEA插件、Eclipse插件,帮助开发人员在工程研发的多个阶段进行代码规约检查,降低故障率、提升编码效率和质量。

阿里巴巴top10的开源项目列表以及用途(阿里巴巴 开源项目)

排名第一的是arthas, star个数31925,主要开发语言java

Arthas (阿尔萨斯)是一款线上监控诊断产品,通过全局视角实时查看应用 load、内存、gc、线程的状态信息,并能在不修改应用代码的情况下,对业务问题进行诊断,包括查看方法调用的出入参、异常,监测方法执行耗时,类加载信息等,大大提升线上问题排查效率。

阿里巴巴top10的开源项目列表以及用途(阿里巴巴 开源项目)

阿里巴巴top10的开源项目列表以及用途(阿里巴巴 开源项目)

当你遇到以下类似问题而束手无策时,Arthas可以帮助你解决:

  1. 这个类从哪个 jar 包加载的?为什么会报各种类相关的 Exception
  2. 我改的代码为什么没有执行到?难道是我没 commit?分支搞错了?
  3. 遇到问题无法在线上 debug,难道只能通过加日志再重新发布吗?
  4. 线上遇到某个用户的数据处理有问题,但线上同样无法 debug,线下无法重现!
  5. 是否有一个全局视角来查看系统的运行状况?
  6. 有什么办法可以监控到 JVM 的实时运行状态?
  7. 怎么快速定位应用的热点,生成火焰图?
  8. 怎样直接从 JVM 内查找某个类的实例?

阿里巴巴开源的软件还有很多,其最大的优势在于,提供了全中文文档,这对于国内程序员来说,拿来就可以上手的轮子,怎么不爱呢?例如tengine强大如nginx. 以及weex开发app的框架.很多项目也停止维护了,但是这些让这些代码开源的精神是中国其他大厂无法企及的高度。

2023年3月14日

相关新闻

联系我们
联系我们
在线咨询
分享本页
返回顶部