阿里巴巴常用的12个后端开发工具

1 阿尔萨斯Java在线诊断工具

Arthas是一款用于Java应用程序的在线诊断工具,由阿里巴巴于2018年9月开源。

典型场景:

  • 您不知道从中加载类的特定JAR包。 您想弄清楚为什么您的系统会抛出各种与类相关的异常。

  • 您不知道为什么修改后的代码无法执行。您不记得是否已提交更改。您不确定您是否使用正确的分支。

  • 出现问题,您无法在线调试。您想知道是否必须将日志添加到您的应用并再次发布。

  • 您遇到了用户数据处理问题,但无法在线调试或脱机重现问题。

  • 您希望拥有一个全局视图来监视系统的运行状态。

  • 您需要一个解决方案来监视JVM的实时运行状态。

Arthas支持Java Development Kit(JDK)6及更高版本,它支持Linux,Mac和Windows。 Arthas使用命令行交互模式,并允许您使用Tab在命令行中自动完成命令,从而使问题定位和诊断更加容易。

基础教程:
https://alibaba.github.io/arthas/arthas-tutorials?language = en&id =arthas-basics

高级教程:
https://alibaba.github.io/arthas/arthas-tutorials?language = en&id =arthas-advanced

GitHub页面:https://github.com/alibaba/arthas

2 Cloud Toolkit IDE插件

Cloud Toolkit是一个集成开发环境(IDE)插件,可用于帮助开发人员更有效地开发,测试,诊断和部署应用程序。 Cloud Toolkit允许开发人员方便地将本地应用程序部署到任何计算机(本地或基于云)。 Cloud Toolkit内置了Arthas诊断工具,支持高效执行终端命令和SQL语句。 CloudToolkit可用于不同的IDE,例如IntelliJ IDEA,Eclipse,PyCharm和Maven。

典型场景:

  • 每次修改代码时,您都厌倦了反复打包代码。

  • 您不希望经常在Maven和Git等代码管理工具之间来回切换。

  • 您使用安全副本(SCP)工具上载文件,并使用XShell或SecureCRT登录到您的服务器,替换部署包或重新启动服务器。

  • 您不希望定期在各种FTP和SCP工具之间来回切换,以将文件上载到服务器的指定目录。

下载链接:https://plugins.jetbrains.com/plugin/11386-alibaba-cloud-toolkit

3 ChaosBlade混沌工程故障注入工具

ChaosBlade是一个混沌工程工具,遵循混沌工程实验的原则,并提供广泛的故障场景,以帮助您提高分布式系统的容错性和可恢复性。它可以注入潜在的故障,并提供各种故障情景。这些方案包括延迟,异常,返回特定值,修改参数值,重复调用和try-catch块异常。

典型场景:

  • 您发现很难测量微服务的容错能力。

  • 您不知道如何验证容器编排配置的合理性。

  • 您不知道如何实现PaaS层的健壮性测试。

GitHub页面:https://github.com/chaosblade-io/chaosblade

4 阿里巴巴Java编码指南

此插件检测Java代码中的编码问题,并为您提供提示。 这个插件是基于Kotlin语言开发的。

IDEA插件使用说明:

https://github.com/alibaba/p3c/tree/master/idea-plugin

Eclipse插件使用说明:https://github.com/alibaba/p3c/tree/master/eclipse-plugin

GitHub页面:https://github.com/alibaba/p3c

5 应用实时监控服务(ARMS)

ARMS是一种应用程序性能管理(APM)工具。 它提供三种监控选项:前端监控,应用程序监控和自定义监控,帮助您构建自己的实时应用程序性能和业务监控功能。
典型场景:

  • 您在22:00收到37条警报消息,但您不知道从哪里开始。

  • 客户或业务团队比您更早发现问题。

  • 您每月在服务器上投入数万美元,但您仍然无法保证良好的用户体验。

应用程序监控集成:https://www.alibabacloud.com/help/doc-detail/63796.htm

自定义监控:https://www.alibabacloud.com/help/doc-detail/47474.htm

产品页面:https://www.alibabacloud.com/product/arms

6 Docsite开源静态网站生成器

Docsite是一个开源静态网站生成器,可帮助您构建自己的官方网站,文档中心,博客站点和社区。它易于使用和上瘾。它支持反应和静态渲染,PC和移动客户端,国际化,SEO,降价文档以及许多有用的功能,如全局站点搜索,站点样式自定义和页面自定义。

教程:https://docsite.js.org/en-us/docs/installation.html

GitHub页面:https://github.com/txd-team/docsite

7 Freeline - Android的二级编译解决方案

Freeline缓存可重用的类文件和资源索引,并编译代码更新并在几秒钟内将它们部署到您的设备。这有效地减少了在日常开发期间重新编译和安装的大量时间。使用Freeline最方便的方法是直接安装AndroidStudio插件。

教程:https://github.com/alibaba/freeline/blob/master/README.md

GitHub页面:https://github.com/alibaba/freeline

8 阿里云应用高可用性服务(AHAS)

AHAS提供了许多强大的功能,例如容器环境的体系结构可视化,例如Kubernetes(K8s),基于故障注入的高可用性评估,以及一键式限制和降级。 AHAS可帮助您以低成本快速提高应用程序可用性。

典型场景:

  • 重构服务时,您希望可视化体系结构以精确理解资源实例组合和交互。

  • 您需要真正的故障情景和钻取模型。

  • 您希望以低成本使用限制和降级功能。

教程:https://www.alibabacloud.com/help/doc-detail/90323.htm
产品页面:https://www.alibabacloud.com/product/ahas

9 EasyExcel数据处理工具

EasyExcel是一个解析Java代码并生成excel文件的框架。它重写了用于Microsoft Excel 2007的Apache POI SAX解析器。要处理3 MB Excel文件,Apache POI SAX解析器需要大约100 MB内存,而EasyExcel需要大约几KB。此外,EasyExcel消除了内存(OOM)问题,无论excel文件有多大。对于Microsoft Excel 2003,EasyExcel仍使用Apache POI SAX解析器。但它将模型转换器封装在上层,使其更易于使用。

教程:https://github.com/alibaba/easyexcel/blob/master/quickstart.md

GitHub页面:https://github.com/alibaba/easyexcel

10 HandyJSON for iOS

HandyJSON是一个用Swift语言编写的json-object序列化/反序列化库。

与其他流行的Swift JSON库相比,HandyJSON支持纯Swift类,易于使用。 在反序列化中使用HandyJSON(将JSON转换为模型)时,模型不必从NSObject继承,因为HandyJSON不是基于KVC的。 您也不必为模型定义映射函数。在定义模型类并声明它遵循HandyJSON协议之后,HandyJSON通过将属性名称作为键来自动解析JSON字符串中的值。

教程:https://github.com/alibaba/HandyJSON/blob/master/README.md

GitHub页面:https://github.com/alibaba/HandyJSON

11 Druid数据库连接池

Druid是Java语言中最好的数据库连接池,它提供了强大的监视和扩展功能。

教程:https://github.com/alibaba/druid/wiki/FAQ

GitHub页面:https://github.com/alibaba/druid

12 阿里巴巴DragonwellJava开发套件

阿里巴巴Dragonwell是阿里巴巴/AlipayJDK(AJDK)的开源版本,是阿里巴巴内部使用的定制OpenJDK。 AJDK为在线电子商务,金融和物流应用程序进行了基于业务场景的优化。它一直在超大型阿里巴巴数据中心运行,每个数据中心运行超过100,000台服务器。 阿里巴巴Dragonwell兼容Java SE标准。目前,它仅支持Linux x86_64平台。

教程:https://github.com/alibaba/dragonwell8/wiki/Alibaba-Dragonwell8-User-Guide

GitHub页面:https://github.com/alibaba/dragonwell8

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/45679.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Docker实战:docker compose 搭建Redis

1、配置文件准备 redis 配置文件:https://pan.baidu.com/s/1YreI9_1BMh8XRyyV9BH08g2、创建目录并赋权 mkdir -p /home/docker/redis/data /home/redis/logs /home/redis/conf chmod -R 777 /home/docker/redis/data* chmod -R 777 /home/docker/redis/logs*3、re…

css题库

什么是css? CSS 是“Cascading Style Sheet”的缩写,中文意思为“层叠样式表”,它是一种标准的样式表语言,用于描述网页的表现形式(例如网页元素的位置、大小、颜色等)。 为什么最好把 CSS 的 link 标签放在…

Docker 的基本概念和优势,在应用程序开发中的实际应用。

Docker是一个开源的容器化平台,让开发者能够轻松地打包、运输和运行应用程序。其基本概念包括: 镜像(Image):一个镜像是一个只读的软件包,它包含了运行应用所需的所有代码、库文件、环境变量和配置文件等。 容器(Container)&…

Nginx转发请求到后端服务报400 Bad Request

问题描述 系统部署好后,进行测试时发现有部分接口出错,项目采用Nginx作为后端代理服务器,有Nginx统一将请求转发到后端的网关服务,再由网关服务路由到具体的服务上,发布好后,大部分接口都是正常的&#xff…

Linux 线程并发运行

一、并发与并行 并行:两个线程在同一时刻同时执行,需要有两个处理器。 并发:两个线程在同一时刻交替执行,只有一个处理器。 并行是一种特殊的并发。 二、线程并发运行 代码如下: 代码分析: 主函数中第…

第 111 场LeetCode 双周赛题解

A 统计和小于目标的下标对数目 数据量小&#xff0c;直接枚举数对 class Solution { public:int countPairs(vector<int> &nums, int target) {int n nums.size();int res 0;for (int i 0; i < n; i)for (int j 0; j < i; j)if (nums[i] nums[j] < tar…

[Go版]算法通关村第十二关青铜——不简单的字符串转换问题

目录 题目&#xff1a;转换成小写字母思路分析&#xff1a;大写字母ASCII码 32 小写字母ASCII码Go代码Go代码-优化: 大写字母ASCII码 | 32 小写字母ASCII码 题目&#xff1a;字符串转换整数&#xff08;atoi&#xff09;思路分析&#xff1a;去除首部空格 明确正负 读取数…

【Spring Boot】详解条件注解以及条件拓展注解@Conditional与@ConditionOnXxx

Spring Conditional Spring 4.0提供的注解。作用是给需要装载的Bean增加一个条件判断。只有满足条件才会装在到IoC容器中。而这个条件可以由自己去完成的&#xff0c;可以通过重写Condition接口重写matches()方法去实现自定义的逻辑。所以说这个注解增加了对Bean装载的灵活性。…

STM32 CubeMX (第四步Freertos内存管理和CPU使用率)

STM32 CubeMX STM32 CubeMX &#xff08;第四步Freertos内存管理和CPU使用率&#xff09; STM32 CubeMX一、STM32 CubeMX设置时钟配置HAL时基选择TIM1&#xff08;不要选择滴答定时器&#xff1b;滴答定时器留给OS系统做时基&#xff09;使用STM32 CubeMX 库&#xff0c;配置Fr…

通过安全日志读取WFP防火墙放行日志

前言 之前的文档中&#xff0c;描写了如何对WFP防火墙进行操作以及如何在防火墙日志中读取被防火墙拦截网络通讯的日志。这边文档&#xff0c;着重描述如何读取操作系统中所有被放行的网络通信行为。 读取系统中放行的网络通信行为日志&#xff0c;在win10之后的操作系统上&am…

高阶数据结构-图

高阶数据结构-图 图的表示 图由顶点和边构成&#xff0c;可分为有向图和无向图 邻接表法 图的表示方法有邻接表法和邻接矩阵法&#xff0c;以上图中的有向图为例&#xff0c;邻接表法可以表示为 A->[(B,5),(C,10)] B->[(D,100)] C->[(B,3)] D->[(E,7)] E->[…

FPGA原理与结构——ROM IP的使用与测试

一、前言 本文介绍Block Memory Generator v8.4 IP核 实现ROM&#xff0c;在学习一个IP核的使用之前&#xff0c;首先需要对于IP核的具体参数和原理有一个基本的了解&#xff0c;具体可以参考&#xff1a; FPGA原理与结构——块RAM&#xff08;Block RAM,BRAM&#xff09;http…

供应链安全和第三方风险管理:讨论如何应对供应链中的安全风险,以及评估和管理第三方合作伙伴可能带来的威胁

第一章&#xff1a;引言 在当今数字化时代&#xff0c;供应链的安全性越来越受到重视。企业的成功不仅仅依赖于产品和服务的质量&#xff0c;还取决于供应链中的安全性。然而&#xff0c;随着供应链越来越复杂&#xff0c;第三方合作伙伴的参与也带来了一系列安全风险。本文将…

C#中的委托

目录 概述&#xff1a; 举例&#xff1a;​ 总结: 概述&#xff1a; 中文的角度来说:指的是把事情托付给别人或别的机构(办理)&#xff0c;造个句子&#xff1a;别人委托的事情&#xff0c;我们一定要尽力而为&#xff0c;不遗余力的去办成。 在C#中&#xff0c;委托是一种…

回归预测 | MATLAB实现GA-RBF遗传算法优化径向基函数神经网络多输入单输出回归预测(多指标,多图)

回归预测 | MATLAB实现GA-RBF遗传算法优化径向基函数神经网络多输入单输出回归预测&#xff08;多指标&#xff0c;多图&#xff09; 目录 回归预测 | MATLAB实现GA-RBF遗传算法优化径向基函数神经网络多输入单输出回归预测&#xff08;多指标&#xff0c;多图&#xff09;效果…

CoordAtt注意力网络结构

源码&#xff1a; import torch import torch.nn as nn import math import torch.nn.functional as Fclass h_sigmoid(nn.Module):def __init__(self, inplaceTrue):super(h_sigmoid, self).__init__()self.relu nn.ReLU6(inplaceinplace)def forward(self, x):return self.…

VSCode\PyCharm23.2+PyQGIS插件开发配置相关要点

近期利用VSCode\PyCharmPyQGIS进行插件开发&#xff0c;现将要点总结一下&#xff1a; 一、VSCode&#xff0c;我没有配置成功&#xff0c;主要是最后一个阶段调试的时候老是不成功。以后会持续关注。但是有几个要点&#xff1a; 1、VSCodePyQIS开发&#xff0c;智能提示的设…

Apache Doris 2.0.0 特性分析

1、存算分离 所谓存算分离是指查询外表时&#xff0c;使用一种专门做计算的BE节点&#xff0c;但对于存储在BE上的内部表&#xff0c;目前还不能做到存储分离。 doris可以查询外部表&#xff0c;包括&#xff1a; Hive、Iceberg、Hudi、Elasticsearch、JDBC、Paimon 早期版本中…

jmeter模拟多用户并发

一、100个真实的用户 1、一个账号模拟100虚拟用户同时登录和100账号同时登录 区别 &#xff08;1&#xff09;1个账号100个人用&#xff0c;同时登录&#xff1b; &#xff08;2&#xff09;100个人100个账号&#xff0c;同时登录。 相同 &#xff08;1&#xff09;两个都…

机器学习之概率论

最近&#xff0c;在了解机器学习相关的数学知识&#xff0c;包括线性代数和概率论的知识&#xff0c;今天&#xff0c;回顾了概率论的知识&#xff0c;贴上几张其他博客的关于概率论的图片&#xff0c;记录学习过程。