最近,利用国庆假期,我特别整理了阿里巴巴开源的10个神级项目。
这些开源项目中的绝大多数已用于实际工作,或者一些同事使用过。
Druid声称是Java语言中最好的数据库连接池,可以提供强大的监视和扩展功能。监视背景如下所示:
德鲁伊的主要优点如下:
github地址:https://github.com/alibaba/druid
Maven Central Ware
配置Maven依赖性:
这是阿里巴巴的开源JSON解析库。它可以分析JSON格式的字符串,支持Java Bean序列化到JSON字符串中,或者可以从JSON字符串序列化到Javabean。
Fastjson的主要优点如下:
github地址:https://github.com/alibaba/fastjson
Maven Central Warehouse:https://mvnrepository.com/artifact/com.alibaba/fastjson
配置Maven依赖性:
Apache Dubbo是一个微服务开发框架,它提供了RPC通信和微服务治理的两个关键功能。这意味着Dubbo开发的微服务将具有很长的范围 - 差异发现和交流能力。同时,Dubbo提供的丰富服务治理能力可以意识到服务治理需求,例如服务发现,负载平衡和交通安排。
同时,Dubbo高度可扩展。用户可以在任何功能点自定义其实现,以更改框架的默认行为以满足其业务需求。它已移交给Apache管理和维护。
架构图如下:
Dubbo的主要优点如下:
github地址:https://github.com/apache/dubbo
Maven Central Warehouse:httts://mvnrepository.com/artifact/com.alibaba/dubbo/
配置Maven依赖性:
Apache RocketMQ是一个分布式消息和流媒体平台,其潜伏期低,高性能和可靠性,万亿级容量和灵活的可扩展性。
它提供了多种功能:
RocketMQ背景管理接口:
github地址:https://github.com/apache/rocketmq
Maven Central Warehouse:https://mvnrepository.com/artifact/org.apache.rocketmq-spring-boot-starter
RocketMQ包括:服务器和客户端,可以专注于我们项目中的客户端代码。
配置Maven依赖性:
Arthas是阿里巴巴的开源Java诊断工具,受到开发人员的喜爱。
当您在下面遇到类似问题和无助的问题时,Arthas可以帮助您解决:
分析代码消耗时间:
Arthas支持JDK 6+,并且可以在各种操作系统上运行,例如:Linux/Mac/Windows,使用命令行交互式模式。同时,它提供了丰富的选项卡自动互补功能,以进一步促进问题的定位和诊断。
github地址:https://alibaba.github.io/arthas/
Maven Central Warehouse:https://mvnrepository.com/artifact/com.taobao.arthas/arthas/arthas-spring-boot-starter
您可以开始Arthas:
NACOS是一个简单的使用平台,专为动态服务发现和配置和服务管理而设计。它可以帮助您轻松构建云本机应用程序和微服务平台。
服务是NACOS的第一位公民。Nacos支持几乎所有类型的服务,例如Dubbo/GRPC服务,Spring Cloud Restful Services或Kubernetes服务。
NACO提供了四个主要功能。
NACOS地图:
NACOS生态图:
github地址:https://github.com/alibaba/nacos
Maven Central Warehouse:https://mvnrepository.com/artifact/com.alibaba.cloud/spring-darter-nacos-discovery
Java解析和生成Excel的更著名的框架是Apache Poi和JXL。但是它们都有一个严重的问题,就是它非常消耗。POI具有一组SAX模式API,可以在一定程度上解决某些内存溢出问题,但是POI仍然有一些缺陷,例如Decompression的07版本的Excel解压缩和存储。仍然很大。
EasyExcel重写POI的07版Excel的分析。3M Excel仍然需要大约100m的内存,并通过POI SAX解析。可以将easyexcel的螺旋式减小到几m,即使较大的Excel也不会具有内存溢出。03 DependencPoi的SAX模式,在上层进行了模型转换包装,使用户更加简单和方便。
64m内存读取75m(46W行25列)在1分钟内
github地址:https://github.com/alibaba/easyexcel
Maven Central Warehouse:https://mvnrepository.com/artifact/com.alibaba/easyexcel
配置Maven依赖性:
随着分布式系统变得越来越流行,服务之间的可靠性比以往任何时候都更为重要。
Sentinel将“流量”作为在多个领域进行工作的起点,例如交通控制,整形手术,保险丝和系统自适应保护,以确保微服务的可靠性和弹性。
哨兵具有以下特征:
功能概述:
生态系统景观:
github地址:https://github.com/alibaba/sentinel
Maven Central Ware
配置Maven依赖性:
由于业务特征,阿里巴巴B2B主要集中在该国,而买主主要集中在国外。因此,杭州和美国在不同土地房间的需求得到了得出。同时,为了改善用户体验,可以编写,并且Otter之类的产品诞生了。
水獭的第一个版本的历史可以追溯到2004年?05。外部开源版本是第四版。从2011年7月到现在,发展时间一直持续。目前到OTTE4。
当前同步量表:
水獭可以解决什么?
工作原理图:
单房副本示意图:
在不同地方的机房的浸入示意图:
github地址:https://github.com/alibaba/otter
Maven Central Ware
P3C插件介绍了《阿里巴巴Java代码指南》,该指南整合了多年来阿里巴巴集团技术团队的最佳编程实践。因为我们鼓励再利用和更好地了解彼此的程序,所以大量的Java编程团队提出了严格的要求,提出了严格的要求对于十字准则的质量。
阿里巴巴过去曾见过许多编程问题。黑客很容易攻击受身份验证的攻击。为了解决这些问题,我们为阿里巴巴的Java开发人员编写了此文档。
有关更多信息,请参阅Alibaba Java代码指南:
该项目由3个部分组成:
第49条规则基于PMD。有关更多详细信息,请参阅P3C-PMD文档。想法和日食中实施的四个规则如下:如下:
使用P3C插头-in的效果:
阿里巴巴Java开发手册的最新版本下载地址:https://github.com/alibaba/p3c/blob/master/master/java开发手册(Songshan版本).pdf
github地址:https://github.com/alibaba/p3c/tree/idea-插件
春天的阿里巴巴提供了一个用于分布式应用程序开发的解决方案。它包含开发分布式应用程序所需的所有组件,使您可以轻松地使用Spring Cloud来开发应用程序。
使用Spring Cloud Alibaba,您只需要添加一些注释和少量配置即可将Spring Cloud应用程序连接到Alibaba的分布式解决方案,并通过Alibaba Middleware构建分布式应用程序系统。
主要功能如下:
主要包括以下组件:
github地址:https://github.com/alibaba/spring-cloud-alibaba
配置Maven依赖性:
公共帐户:Su San说技术