阿里程序員常用的 15 款開發(fā)者工具(2020 版)
1. Java 工程腳手架 Java Initializr本文精選了一些阿里經(jīng)濟體內(nèi)部最受開發(fā)者歡迎的開發(fā)者工具,篩選出一些帶有普適性同樣適合外部開發(fā)者的,希望能助力開發(fā)者們提高開發(fā)效率。
官網(wǎng):https://start.aliyun.com/bootstrap.html
簡介:2020 年由阿里巴巴中間件團隊發(fā)布的定制版 Java工程腳手架,快速搭建工程應用。
工具使用場景:
難道每次創(chuàng)建工程,都需要拿現(xiàn)有項目做裁剪嗎?
引入新組件需要四處搜索,組件的坐標真的記不??!
網(wǎng)上的案例可以運行,為什么我照著做了就不行?
組件使用還需要在我自己的電腦上搭建完整工程和運行環(huán)境,真的很麻煩!
支持 Spring 官方腳手架的全部功能,且增加了豐富的典型配置和使用案例。多種標準應用架構(gòu)供選擇,讓你生成完工程就可以直接寫代碼?;跒g覽器的運行環(huán)境,進一步降低功能體驗和試用的復雜度。
2. Java 線上診斷工具 Arthas官網(wǎng):https://arthas.aliyun.com/doc/
簡介:Arthas 是阿里巴巴 2018 年 9 月開源的一款 Java 線上診斷工具。
工具的使用場景:
這個類從哪個 jar 包加載的?為什么會報各種類相關(guān)的 Exception?
我改的代碼為什么沒有執(zhí)行到?難道是我沒 commit?分支搞錯了?
遇到問題無法在線上 debug,難道只能通過加日志再重新發(fā)布嗎?
線上遇到某個用戶的數(shù)據(jù)處理有問題,但線上同樣無法 debug,線下無法重現(xiàn)!
是否有一個全局視角來查看系統(tǒng)的運行狀況?
有什么辦法可以監(jiān)控到 JVM 的實時運行狀態(tài)?
Arthas 支持 JDK 6+,支持 Linux/Mac/Windows,采用命令行交互模式,同時提供豐富的 Tab 自動補全功能,進一步方便進行問題的定位和診斷。
3. Java 工具集 Dragonwell官網(wǎng):https://www.aliyun.com/product/dragonwell
簡介:Alibaba Dragonwell 是一款免費的, 生產(chǎn)就緒型 Open JDK 發(fā)行版,提供長期支持,包括性能增強和安全修復。阿里巴巴擁有最豐富的 Java 應用場景,覆蓋電商,金融,物流等眾多領(lǐng)域,世界上最大的 Java 用戶之一。Alibaba Dragonwell 作為 Java 應用的基石,支撐了阿里經(jīng)濟體內(nèi)所有的 Java 業(yè)務(wù)。Alibaba Dragonwell 完全兼容 Java SE 標準,您可以在任何常用操作系統(tǒng)(包括 Linux、Windows 和 macOS)上開發(fā) Java 應用程序, 運行時生產(chǎn)環(huán)境選擇 Alibaba Dragonwell。
4. Java 代碼規(guī)約掃描插件官網(wǎng):https://github.com/alibaba/p3c
簡介:該插件用于檢測 Java 代碼中存在的不規(guī)范的位置,并給予提示。規(guī)約插件是采用 Kotlin 語言開發(fā)。
5. 應用實時監(jiān)控工具 ARMS官網(wǎng):https://www.aliyun.com/product/arms
簡介:ARMS 是一款 APM 類的監(jiān)控工具,提供前端、應用、自定義監(jiān)控 3 類監(jiān)控選項,可快速構(gòu)建實時的應用性能和業(yè)務(wù)監(jiān)控能力。
工具的使用場景:
晚上 10 點收到 37 條報警信息,你卻無從下手?
當我們發(fā)現(xiàn)問題的時候,客戶/業(yè)務(wù)方已經(jīng)發(fā)起投訴?
每個月花幾十萬買服務(wù)器,卻無法保障用戶體驗?
官網(wǎng):https://www.aliyun.com/product/pts
簡介:PTS 可以模擬大量用戶訪問業(yè)務(wù)的場景,任務(wù)隨時發(fā)起,免去搭建和維護成本,支持 JMeter 腳本轉(zhuǎn)化為 PTS 壓測,同樣支持原生 JMeter 引擎進行壓測。
使用場景:
大促活動準備前,想模擬真實多用戶高并發(fā)訪問場景?
產(chǎn)品版本迭代,想觀察流量洪峰時產(chǎn)品表現(xiàn)?
產(chǎn)品交付
官網(wǎng):https://www.aliyun.com/product/aliware/mse
簡介:依賴 ZK/Nacos/Eureka 等開源注冊和配置方案進行自建會中引起依賴復雜、建設(shè)和運維成本高的問題,同時,也會遇到 Hbase、Spark 或 Kafka 等大數(shù)據(jù)的環(huán)境下的分布式系統(tǒng)協(xié)調(diào)難題,MSE 提供了注冊和配置中心的托管功能,提供高可用、免運維的 ZooKeeper、Nacos 和 Eureka 等集群,完全兼容開源產(chǎn)品標準接口,同時提供了離群實例摘除、無損下線、服務(wù)鑒權(quán)、應用列表和標簽路由的功能。
使用場景:
微服務(wù)注冊發(fā)現(xiàn):在快速發(fā)展的云計算時代,微服務(wù)應用越來越廣泛,MSE 為采用 Dubbo 和 Spring Cloud 框架開發(fā)的微服務(wù)提供了高可用、免運維和穩(wěn)定的服務(wù)注冊中心。
分布式配置管理:托管的 Nacos 在做微服務(wù)注冊的同時,并能提供配置管理的能力。
分布式調(diào)度(支持非微服務(wù)場景):如果企業(yè)使用 HBase、Spark 或 Kafka 等開源軟件,則使用 MSE 提供的 ZooKeeper、Eureka 和 Nacos 可以實現(xiàn)分布式系統(tǒng)的協(xié)調(diào),助力企業(yè)降低成本和提高效率。
官網(wǎng):https://www.aliyun.com/product/ahas
簡介:AHAS 為 K8s 等容器環(huán)境提供了架構(gòu)可視化的功能,同時,具有故障注入式高可用能力評測和一鍵流控降級等功能,可以快速低成本的提升應用可用性。
使用場景:
服務(wù)化改造過程中,想精確的了解資源實例的構(gòu)成和交互情況,實現(xiàn)架構(gòu)的可視化?
想引入真實的故障場景和演練模型?
低門檻獲得流控、降級功能?
官網(wǎng):https://www.aliyun.com/product/acr
簡介:容器鏡像服務(wù) ACR(Alibaba Cloud Container Registry)默認實例版提供基礎(chǔ)的容器鏡像服務(wù),包括安全的應用鏡像托管能力、精確的鏡像安全掃描功能、穩(wěn)定的國內(nèi)外鏡像構(gòu)建服務(wù)以及便捷的鏡像授權(quán)功能,從而方便用戶進行鏡像全生命周期管理。
容器鏡像服務(wù)簡化了 Registry 的搭建運維工作,支持多地域的鏡像托管,并聯(lián)合容器服務(wù)等云產(chǎn)品,打造云上使用 Docker 的一體化體驗。
10.?Serverless?開發(fā)者平臺 Serverless Devs官網(wǎng):https://www.serverless-devs.com/
簡介:Serverless Devs 是一個開源開放的 Serverless 開發(fā)者平臺,致力于為開發(fā)者提供強大的工具鏈體系。通過該平臺,開發(fā)者可以一鍵體驗多云 Serverless 產(chǎn)品,極速部署 Serverless 項目。Serverless Devs 包含 Serverless Devs Tool (Serverless 開發(fā)者工具)和 Serverless Devs App Store(Serverless 應用中心):
Serverless Devs Tool 讓開發(fā)者可以更簡單、更快速的進行應用創(chuàng)建、項目開發(fā)、測試、發(fā)布部署等,實現(xiàn)項目的全生命周期管理。
Serverless Devs App Store 是一個集 Serverless 應用在線搜索,一鍵部署以及資源可視化編輯于一體的應用中心產(chǎn)品。應用中心擁有海量的生產(chǎn)級項目模板,案例模板,開發(fā)者可以自由選擇,并將項目一鍵部署到指定的云平臺上。
官網(wǎng):https://github.com/alibaba/freeline
簡介:Freeline 可以充分利用緩存文件,在幾秒鐘內(nèi)迅速地對代碼的改動進行編譯并部署到設(shè)備上,有效地減少了日常開發(fā)中的大量重新編譯與安裝的耗時。Freeline 最快捷的使用方法就是直接安裝 Android Studio 插件。
12. 云效開發(fā)者工具 KT官網(wǎng):https://github.com/alibaba/kt-connect
簡介:KT 可以簡化在 Kubernetes 下進行聯(lián)調(diào)測試的復雜度,提高基于 Kubernetes 的研發(fā)效率。
13. 數(shù)據(jù)處理工具 EasyExcel官網(wǎng):https://github.com/alibaba/easyexcel
簡介:EasyExcel 是一個用來對 Java 進行解析、生成 Excel 的框架,它重寫了 poi 對 07 版 Excel 的解析,原本一個 3M 的 Excel 用 POI sax 需要 100M 左右內(nèi)存,EasyExcel 可降低到 KB 級別,并且再大的 excel 也不會出現(xiàn)內(nèi)存溢出的情況。03 版依賴 POI 的 sax 模式。在上層做了模型轉(zhuǎn)換的封裝,讓使用者更加簡單方便。
14.?iOS?類工具?HandyJSON官網(wǎng):https://github.com/alibaba/HandyJSON
簡介:HandyJSON 是一個用于 Swift 語言中的 JSON 序列化/反序列化庫。
與其他流行的 Swift JSON 庫相比,HandyJSON 的特點是,它支持純 Swift 類,使用也簡單。它反序列化時(把 JSON 轉(zhuǎn)換為 Model)不要求 Model 從 NSObject 繼承(因為它不是基于 KVC 機制),也不要求你為 Model 定義一個 Mapping 函數(shù)。只要你定義好 Model 類,聲明它服從 HandyJSON 協(xié)議,HandyJSON 就能自行以各個屬性的屬性名為 Key,從 JSON 串中解析值。
15. 數(shù)據(jù)庫落地 Druid官網(wǎng):https://github.com/alibaba/druid
簡介:Druid 是 Java 語言下的數(shù)據(jù)庫連接池,它能夠提供強大的監(jiān)控和擴展功能。
原文鏈接:https://developer.aliyun.com/article/778870
end
*版權(quán)聲明:轉(zhuǎn)載文章和圖片均來自公開網(wǎng)絡(luò),版權(quán)歸作者本人所有,推送文章除非無法確認,我們都會注明作者和來源。如果出處有誤或侵犯到原作者權(quán)益,請與我們聯(lián)系刪除或授權(quán)事宜。
長按識別圖中二維碼
關(guān)注獲取更多資訊
不點關(guān)注,我們哪來故事?

點個再看,你最好看
