自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

阿里提供的12種常用后端開發(fā)工具

譯文
開發(fā) 開發(fā)工具
在本文中,我們將介紹可供后端開發(fā)人員使用的十二種非常實用的開源工具。

[[267668]]

【51CTO.com快譯】無論是從手動編碼到自動化開發(fā),還是從重復勞動到改進創(chuàng)新,業(yè)界的開發(fā)工具一直在隨著編程技術的發(fā)展而持續(xù)迭代。在此方面,阿里巴巴團隊與阿里云平臺通過以開源的方式,發(fā)布了各種基于云的應用。與此同時,他們也向公眾提供了一系列經(jīng)過了在各種業(yè)務場景中多年積累的技術實踐。

考慮到開發(fā)人員涉獵技術的多樣性,本文將向您主要介紹的是阿里開發(fā)團隊常用的十二種后端工具,希望它們能夠幫助您開發(fā)出更高效、更優(yōu)雅的軟件產(chǎn)品。

1. Arthas - Java在線診斷工具

Arthas是由阿里巴巴于2018年9月推出的針對Java應用程序的開源式在線診斷工具。

典型適用場景:

  • 并不知道某個特定JAR包是從哪個類被加載的,但又需要搞清楚為何自己的系統(tǒng)拋出了各種與類相關的異常。
  • 不清楚為何自己修改后的代碼無法被執(zhí)行;也不記得是否提交過哪些修改;或者不確定是否使用了正確的版本分支。
  • 面對出現(xiàn)的問題,無法進行聯(lián)機調試;正在猶豫是否需要將各種日志添加到自己的應用中,并再次發(fā)布。
  • 遇到了某個用戶數(shù)據(jù)處理的問題,但是無法進行聯(lián)機調試、或予以脫機重現(xiàn)問題。
  • 希望通過全局視圖來監(jiān)控系統(tǒng)的運行狀態(tài)。
  • 需要使用一套解決方案,來監(jiān)控JVM的實時運行狀態(tài)。

Arthas能夠支持Java開發(fā)工具包(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(https://www.alibabacloud.com/help/doc-detail/98551.htm?spm=a2c41.12911801.0.0.57544839B5EtTB)是一個集成式的開發(fā)環(huán)境(IDE)插件,可用于幫助開發(fā)人員更有效地開發(fā)、測試、診斷和部署應用程序。Cloud Toolkit允許開發(fā)人員方便地將本地應用程序部署到任何云端或本地主機上。Cloud Toolkit內置了Arthas診斷工具,并支持高效地執(zhí)行各種終端命令和SQL語句。Cloud Toolkit適用于包括IntelliJ IDEA、Eclipse、PyCharm和Maven在內的不同IDE。

典型適用場景:

  • 針對每一次修改代碼,都需要反復打包。
  • 不希望定期在Maven和Git之類的代碼管理工具之間進行來回切換。
  • 既可以使用安全復制(SCP)工具上傳文件,有能夠使用XShell或SecureCRT登錄到服務器上替換部署包、或是重新啟動服務器。
  • 不希望為了將各種文件上傳到服務器的指定目錄,而定期在各種FTP和SCP工具之間來回切換。

下載鏈接:https://plugins.jetbrains.com/plugin/11386-alibaba-cloud-toolkit

3. ChaosBlade - 混沌工程類故障注入工具

Chaosblade(https://github.com/chaosblade-io/chaosblade?spm=a2c41.12911801.0.0.57544839B5EtTB)是一種混沌工程類工具。它遵循了各種混沌工程的實驗原則,并提供了廣泛的故障場景,能幫助用戶提高分布式系統(tǒng)的容錯能力和可恢復性。它通過注入各種潛在的故障,來提供包括延遲、異常、返回特定值、修改參數(shù)值、重復調用、以及捕捉塊異常等不同的故障方案。

典型適用場景:

  • 難以測試各種微服務的容錯能力。
  • 無法驗證容器編排配置的合理性。
  • 不知如何實現(xiàn)PaaS層面上的魯棒性測試。

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

4. Alibaba Java Coding Guidelines - 編碼指南

此插件能夠檢測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. Application Real-Time Monitoring Service(應用實時監(jiān)控服務,ARMS)

ARMS(https://www.alibabacloud.com/product/arms?spm=a2c41.12911801.0.0.57544839B5EtTB)是一種應用程序性能管理(APM)工具。它通過提供三種監(jiān)控選項:前端監(jiān)控、應用程序監(jiān)控和自定義監(jiān)控,來幫助用戶自行實現(xià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(https://github.com/txd-team/docsite?spm=a2c41.12911801.0.0.57544839B5EtTB)是一種開源的靜態(tài)網(wǎng)站生成器。它能夠幫助用戶自行構建官方網(wǎng)站、文檔中心、博客站點、以及相應的社區(qū)。它不但簡單易用,而且能夠在PC和移動端上支持多語言的界面交互、靜態(tài)渲染、SEO、標記文檔。另外,它還具有諸如:全局網(wǎng)站搜索、網(wǎng)站樣式自定義、以及頁面定制等許多實用的功能。

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

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

7. Freeline - Second-Level Compilation Solution for Android

Freeline(https://github.com/alibaba/freeline?spm=a2c41.12911801.0.0.57544839B5EtTB)能夠緩存各種可重用類的文件和資源索引,通過編譯代碼的各類更新,它可以在幾秒鐘內完成對于設備的部署??梢姡現(xiàn)reeline有效地減少了用戶在日常開發(fā)過程中,花費在重新編譯和安裝上的大量時間。另外,最方便使用Freeline的方法是直接安裝 Android Studio的插件。

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

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

8. Alibaba Cloud Application High Availability Service(阿里云應用高可用性服務,AHAS)

AHAS提供了針對容器環(huán)境(如Kubernetes/K8s)的體系結構可視化、基于故障注入的高可用性評估、以及一鍵式限流和降級等,許多強大的功能。AHAS可幫助用戶以低成本的方式,快速提高應用程序的可用性。

典型適用場景:

  • 在重建服務時,希望以可視化的體系結構、精確地了解資源實例的組合和交互。
  • 需要提供真正的故障場景和發(fā)掘模型。
  • 希望以較低的成本實現(xiàn)限流和降級等功能。

教程: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分析器。一般而言,Apache POI SAX解析器需要使用大約100 MB的內存,來處理3 MB大小的Excel文件;而EasyExcel只需要大約幾個KB。因此,無論Excel文件的體積如何,EasyExcel都能夠有效地消除內存不足(out-of-memory,OOM)的問題。而對于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對象的序列化/反序列化庫。與其他流行的Swift JSON庫相比,HandyJSON不但易于被使用,而且支持完全的Swift類。當您在反序列化中使用HandyJSON來將JSON轉換為模型時,由于HandyJSON并不基于KVC,因此所產(chǎn)生的模型不必繼承NSObject。當然,您也不必為模型定義任何映射函數(shù)。在您定義并聲明了遵循HandyJSON協(xié)議的模型類之后,HandyJSON會通過將屬性名稱作為鍵值,去自動分析JSON字符串中的數(shù)值。

教程: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. Alibaba Dragonwell Java 開發(fā)套件

Alibaba Dragonwell是阿里團隊內部使用的開源版定制OpenJDK。AJDK對于在線電子商務、財務和物流等應用,進行了基于業(yè)務場景的優(yōu)化。它一直運行在阿里的超大型數(shù)據(jù)中心之中,而每個數(shù)據(jù)中心都有超過10萬臺服務器。Alibaba Dragonwell符合Java SE的標準。不過,它目前只支持Linux x86_64的平臺。

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

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

原文標題:12 Backend Development Tools by Alibaba,作者:Leona Zhang

【51CTO譯稿,合作站點轉載請注明原文譯者和出處為51CTO.com】

責任編輯:龐桂玉 來源: 51CTO
相關推薦

2020-06-24 08:24:09

Web開發(fā)工具

2023-04-09 14:49:57

開發(fā)語言Kotlin

2012-12-24 09:42:11

大數(shù)據(jù)應用開發(fā)輔助開發(fā)工具大數(shù)據(jù)

2010-03-15 15:55:00

Python開發(fā)工具

2018-06-06 15:08:57

前端開發(fā)工具

2020-11-19 10:05:03

Java

2019-10-14 09:08:33

云原生Kubernetes開發(fā)

2021-02-05 23:23:55

Web開發(fā)工具

2013-08-12 18:33:43

AVOSBaaS后端開發(fā)

2021-10-19 09:44:22

開發(fā)測試工具

2010-05-06 10:41:43

ibmdwLotusEclipse

2016-10-25 14:27:16

開源Ruby on RaiWeb框架

2010-07-14 13:57:30

Perl開發(fā)工具

2010-05-28 13:38:29

Linux開發(fā)工具

2012-07-06 09:55:38

云服務開發(fā)工具

2013-08-28 10:02:44

2021-06-23 15:10:18

Epic反作弊網(wǎng)絡安全

2021-11-15 09:00:00

Web開發(fā)工具

2010-03-15 18:39:00

Python程序員

2013-10-14 14:55:44

編程開發(fā)工具
點贊
收藏

51CTO技術棧公眾號