作者:Hermes_People\链接:https://www.jianshu.com/p/4d1...从手工编码到自动化,从重复工作到创新,开发者工具随着技术的发展而不断进化。阿里巴巴集团和阿里云已通过开源发布和基于云的实施向公众提供他们的技术。这些技术是在各种业务场景中经过多年的发展积累的。本文介绍了一些阿里巴巴开发者工具,希望它们能帮助您的开发过程更加高效和优雅。鉴于开发人员可能涉及的技术分支多种多样,本文介绍了一些可能对后端开发人员有用的工具。1、ArthasJava在线诊断工具Arthas是一款Java应用在线诊断工具,由阿里巴巴于2018年9月开源。典型场景:不知道该类具体从哪个JAR包加载。您想弄清楚为什么您的系统抛出各种与类相关的异常。你不知道为什么修改后的代码不执行。您不记得是否提交了更改。您不确定您是否使用了正确的分支。出了点问题,无法在线调试。您想知道是否必须将日志添加到您的应用程序并再次发布。您在处理用户数据时遇到问题,但无法在线调试或离线重现问题。您希望拥有一个全局视图来监控系统的健康状况。您需要一个解决方案来监控JVM的实时运行状态。Arthas支持JavaDevelopmentKit(JDK)6及以上版本,支持Linux、Mac和Windows。Arthas采用命令行交互方式,允许您在命令行中使用Tab键自动补全命令,方便问题定位和诊断。基础教程:https://alibaba.github.io/arthas/arthas-tutorials?hl=enlanguage=en&id=arthas-basics高级教程:https://alibaba.github.io/arthas/arthas-tutorials?id=arthas-basicslanguage=en&id=arthas-advancedGitHub页面:https://github.com/alibaba/arthas2.CloudToolkitIDE插件CloudToolkit是一个集成开发环境(IDE)插件,可以用来帮助开发者开发、测试,更有效地诊断和部署应用程序。CloudToolkit允许开发人员轻松地将本地应用程序部署到任何计算机(本地或基于云)。CloudToolkit内置了Arthas诊断工具,支持终端命令和SQL语句的高效执行。CloudToolkit可用于不同的IDE,例如IntelliJIDEA、Eclipse、PyCharm和Maven。典型场景:您厌倦了每次修改代码都重新打包。您不希望不断地在Maven和代码管理工具(如Git)之间来回切换。您使用安全复制(SCP)工具上传文件并使用XShell或SecureCRT登录到您的服务器,替换部署包或重新启动服务器。您不希望定期在各种FTP和SCP工具之间来回切换以将文件上传到服务器上的指定目录。下载链接:https://plugins.jetbrains.com/plugin/11386-alibaba-cloud-toolkit三、ChaosBladeChaosBlade混沌工程故障注入工具ChaosBlade是一款遵循混沌工程实验原理的混沌工程工具,提供广泛的故障场景,帮助您提高分布式系统的容错性和可恢复性。它可以注入潜在故障并提供各种故障场景。这些场景包括延迟、异常、返回特定值、修改参数值、重复调用以及try-catch块中的异常。典型场景:您发现很难衡量微服务的容错能力。您不知道如何验证容器编排配置的健全性。你不知道如何在PaaS层实现健壮性测试。GitHub页面:https://github.com/chaosblade-io/chaosblade4。AlibabaJavaCodingGuide该插件检测Java代码中的编码问题并为您提供提示。本插件基于Kotlin语言开发。IDEA插件使用说明:https://github.com/alibaba/p3...Eclipse插件使用说明:https://github.com/alibaba/p3c/tree/master/eclipse-pluginGitHub页面:https://github.com/alibaba/p3c5。应用程序实时监控服务(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/arms6.Docsite开源静态网站生成器Docsite是一款开源的静态网站生成器,帮助您搭建自己的官网、文档中心、博客站点和社区。它易于使用且令人上瘾。它支持React和静态渲染、PC和移动客户端、国际化、SEO、markdown文档以及许多有用的功能,如全局站点搜索、站点样式自定义和页面自定义。教程:https://docsite.js.org/en-us/docs/installation.htmlGitHub页面:https://github.com/txd-team/docsite7.Freeline-Android的二次编译解决方案Freeline缓存可重用类文件和资源,编译代码更新并在几秒钟内将它们部署到您的设备。这有效地减少了日常开发过程中重新编译和安装所花费的时间。Freeline最方便的使用方式是直接安装AndroidStudio插件。教程:https://github.com/alibaba/freeline/blob/master/README.mdGitHub页面:https://github.com/alibaba/freeline8。阿里云应用高可用服务(AHAS)AHAS提供了Kubernetes(K8s)等容器环境的架构可视化、基于故障注入的高可用评估、一键限流降级等诸多强大的特性。AHAS帮助您以低成本快速提高应用程序可用性。典型场景:重构服务时,希望将架构可视化,准确理解资源实例组成和交互。您需要真实的故障场景和向下钻取模型。您希望以低成本使用节流和降级。教程:https://www.alibabacloud.com/help/doc-detail/90323.htm产品页面:https://www.alibabacloud.com/product/ahas9.EasyExcel数据处理工具EasyExcel是一个解析Java代码的工具并生成excel文件的框架。它为MicrosoftExcel2007重写了ApachePOISAX解析器。要处理一个3MB的Excel文件,ApachePOISAX解析器需要大约100MB的内存,而EasyExcel需要大约几KB。此外,无论excel文件有多大,EasyExcel都消除了内存不足(OOM)问题。对于MicrosoftExcel2003,EasyExcel仍然使用ApachePOISAX解析器。但是它将模型转换器包装在上层,使其更易于使用。教程:https://github.com/alibaba/easyexcel/blob/master/quickstart.mdGitHub页面:https://github.com/alibaba/easyexcel10.HandyJSONforiOSHandyJSON是一个用Swift语言编写的json-object序列化/反序列化图书馆。与其他流行的SwiftJSON库相比,HandyJSON支持纯Swift类并且易于使用。在反序列化(将JSON转换为模型)中使用HandyJSON时,模型不必继承自NSObject,因为HandyJSON不是基于KVC的。您也不必为模型定义映射函数。在定义了一个模型类并声明其符合HandyJSON协议后,HandyJSON会自动以属性名作为键来解析JSON字符串中的值。教程:https://github.com/alibaba/HandyJSON/blob/master/README.mdGitHub页面:https://github.com/alibaba/HandyJSON11.Druid数据库连接池Druid是Java语言中最好的数据库连接池,提供强大的监控和扩展能力。教程:https://github.com/alibaba/druid/wiki/FAQGitHub页面:https://github.com/alibaba/druid12。AlibabaDragonwellJavaDevelopmentKitAlibabaDragonwell是Alibaba/AlipayJDK(AJDK)的开源版本,是阿里巴巴内部使用的自定义OpenJDK。AJDK针对在线电子商务、金融和物流应用的业务场景进行了优化。它一直在非常大的阿里巴巴数据中心运行,每个数据中心运行超过100,000台服务器。AlibabaDragonwell兼容JavaSE标准。目前只支持Linuxx86_64平台。近期热点文章推荐:1.1000+Java面试题及答案(2021最新版)2.厉害了!Java协程来了。..3.最新!重发版Log4j2.x官方解决了核弹级漏洞,又要熬夜了。..4、SpringBoot2.6正式发布,一大波新特性。.5.《Java开发手册(嵩山版)》最新发布,赶快下载吧!感觉不错,别忘了点赞+转发!
