当前位置: 首页 > 网络应用技术

强有力的建议|阿里开源的11个神级项目

时间:2023-03-07 12:18:34 网络应用技术

  最近,利用国庆假期,我特别整理了阿里巴巴开源的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说技术