點擊鏈接阿里巴巴常用的12個后端開發(fā)工具輕松編程社 2021-09-25
從手動編碼到自動化,從重復工作到創(chuàng)新,開發(fā)人員工具隨著技術的發(fā)展而不斷發(fā)展。阿里巴巴集團和阿里巴巴云已通過開源發(fā)布和基于云的實施向公眾提供其技術。通過在各種業(yè)務場景中的多年開發(fā)積累了這些技術。本文介紹了一些阿里巴巴開發(fā)人員工具,希望它們可以幫助您的開發(fā)過程更加高效和優(yōu)雅。 鑒于開發(fā)人員可能參與的技術分支的多樣性,本文介紹了一些可能對后端開發(fā)人員有用的工具。 1.阿爾薩斯Java在線診斷工具 Arthas是一款用于Java應用程序的在線診斷工具,由阿里巴巴于2018年9月開源。 典型場景: 您不知道從中加載類的特定JAR包。您想弄清楚為什么您的系統(tǒng)會拋出各種與類相關的異常。 您不知道為什么修改后的代碼無法執(zhí)行。您不記得是否已提交更改。您不確定您是否使用正確的分支。 出現(xiàn)問題,您無法在線調(diào)試。您想知道是否必須將日志添加到您的應用并再次發(fā)布。 您遇到了用戶數(shù)據(jù)處理問題,但無法在線調(diào)試或脫機重現(xiàn)問題。 您希望擁有一個全局視圖來監(jiān)視系統(tǒng)的運行狀態(tài)。 您需要一個解決方案來監(jiān)視JVM的實時運行狀態(tài)。 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是一個集成開發(fā)環(huán)境(IDE)插件,可用于幫助開發(fā)人員更有效地開發(fā),測試,診斷和部署應用程序。Cloud Toolkit允許開發(fā)人員方便地將本地應用程序部署到任何計算機(本地或基于云)。Cloud Toolkit內(nèi)置了Arthas診斷工具,支持高效執(zhí)行終端命令和SQL語句。CloudToolkit可用于不同的IDE,例如IntelliJ IDEA,Eclipse,PyCharm和Maven。 典型場景: 每次修改代碼時,您都厭倦了反復打包代碼。 您不希望經(jīng)常在Maven和Git等代碼管理工具之間來回切換。 您使用安全副本(SCP)工具上載文件,并使用XShell或SecureCRT登錄到您的服務器,替換部署包或重新啟動服務器。 您不希望定期在各種FTP和SCP工具之間來回切換,以將文件上載到服務器的指定目錄。 下載鏈接:https://plugins.jetbrains.com/plugin/11386-alibaba-cloud-toolkit 3.ChaosBlade混沌工程故障注入工具 ChaosBlade是一個混沌工程工具,遵循混沌工程實驗的原則,并提供廣泛的故障場景,以幫助您提高分布式系統(tǒng)的容錯性和可恢復性。它可以注入潛在的故障,并提供各種故障情景。這些方案包括延遲,異常,返回特定值,修改參數(shù)值,重復調(diào)用和try-catch塊異常。 典型場景: 您發(fā)現(xiàn)很難測量微服務的容錯能力。 您不知道如何驗證容器編排配置的合理性。 您不知道如何實現(xiàn)PaaS層的健壯性測試。 GitHub頁面:https://github.com/chaosblade-io/chaosblade 4.阿里巴巴Java編碼指南 此插件檢測Java代碼中的編碼問題,并為您提供提示。這個插件是基于Kotlin語言開發(fā)的。 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.應用實時監(jiān)控服務(ARMS) ARMS是一種應用程序性能管理(APM)工具。它提供三種監(jiān)控選項:前端監(jiān)控,應用程序監(jiān)控和自定義監(jiān)控,幫助您構建自己的實時應用程序性能和業(yè)務監(jiān)控功能。 典型場景: 您在22:00收到37條警報消息,但您不知道從哪里開始。 客戶或業(yè)務團隊比您更早發(fā)現(xiàn)問題。 您每月在服務器上投入數(shù)萬美元,但您仍然無法保證良好的用戶體驗。 應用程序監(jiān)控集成:https://www.alibabacloud.com/help/doc-detail/63796.htm 自定義監(jiān)控:https://www.alibabacloud.com/help/doc-detail/47474.htm 產(chǎn)品頁面:https://www.alibabacloud.com/product/arms 6.Docsite開源靜態(tài)網(wǎng)站生成器 Docsite是一個開源靜態(tài)網(wǎng)站生成器,可幫助您構建自己的官方網(wǎng)站,文檔中心,博客站點和社區(qū)。它易于使用和上癮。它支持反應和靜態(tài)渲染,PC和移動客戶端,國際化,SEO,降價文檔以及許多有用的功能,如全局站點搜索,站點樣式自定義和頁面自定義。 教程:https://docsite.js.org/en-us/docs/installation.html GitHub頁面:https://github.com/txd-team/docsite 7.Freeline - Android的二級編譯解決方案 Freeline緩存可重用的類文件和資源索引,并編譯代碼更新并在幾秒鐘內(nèi)將它們部署到您的設備。這有效地減少了在日常開發(fā)期間重新編譯和安裝的大量時間。使用Freeline最方便的方法是直接安裝AndroidStudio插件。 教程:https://github.com/alibaba/freeline/blob/master/README.md GitHub頁面:https://github.com/alibaba/freeline 8.阿里云應用高可用性服務(AHAS) AHAS提供了許多強大的功能,例如容器環(huán)境的體系結構可視化,例如Kubernetes(K8s),基于故障注入的高可用性評估,以及一鍵式限制和降級。AHAS可幫助您以低成本快速提高應用程序可用性。 典型場景: 重構服務時,您希望可視化體系結構以精確理解資源實例組合和交互。 您需要真正的故障情景和鉆取模型。 您希望以低成本使用限制和降級功能。 教程:https://www.alibabacloud.com/help/doc-detail/90323.htm 產(chǎn)品頁面: https://www.alibabacloud.com/product/ahas 9.EasyExcel數(shù)據(jù)處理工具 EasyExcel是一個解析Java代碼并生成excel文件的框架。它重寫了用于Microsoft Excel 2007的Apache POI SAX解析器。要處理3 MB Excel文件,Apache POI SAX解析器需要大約100 MB內(nèi)存,而EasyExcel需要大約幾KB。此外,EasyExcel消除了內(nèi)存(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的。您也不必為模型定義映射函數(shù)。在定義模型類并聲明它遵循HandyJSON協(xié)議之后,HandyJSON通過將屬性名稱作為鍵來自動解析JSON字符串中的值。 教程:https://github.com/alibaba/HandyJSON/blob/master/README.md GitHub頁面:https://github.com/alibaba/HandyJSON 11.Druid數(shù)據(jù)庫連接池 Druid是Java語言中最好的數(shù)據(jù)庫連接池,它提供了強大的監(jiān)視和擴展功能。 教程:https://github.com/alibaba/druid/wiki/FAQ GitHub頁面:https://github.com/alibaba/druid 12.阿里巴巴DragonwellJava開發(fā)套件 阿里巴巴Dragonwell是阿里巴巴/AlipayJDK(AJDK)的開源版本,是阿里巴巴內(nèi)部使用的定制OpenJDK。AJDK為在線電子商務,金融和物流應用程序進行了基于業(yè)務場景的優(yōu)化。它一直在超大型阿里巴巴數(shù)據(jù)中心運行,每個數(shù)據(jù)中心運行超過100,000臺服務器。阿里巴巴Dragonwell兼容Java SE標準。目前,它僅支持Linux x86_64平臺。 閱讀 78 分享收藏 |
|
|
來自: 風聲之家 > 《服務器與開發(fā)》