omniture

AWS宣布面向大眾推出Amazon CodeGuru

Amazon CodeGuru Reviewer使用機(jī)器學(xué)習(xí)來確定應(yīng)用程序開發(fā)過程中的關(guān)鍵問題和難以發(fā)現(xiàn)的錯誤,以提升代碼質(zhì)量
Amazon CodeGuru Profiler可優(yōu)化在生產(chǎn)環(huán)境中運(yùn)行的應(yīng)用程序的性能,并確定最昂貴的代碼行,將運(yùn)營成本降低高達(dá)50%
AWS
2020-07-03 10:00 12997

北京2020年7月3日 /美通社/ -- 亞馬遜(Amazon.com) (NASDAQ: AMZN)旗下公司Amazon Web Services Inc.(簡稱“AWS”)近日宣布面向大眾推出機(jī)器學(xué)習(xí)支持的開發(fā)人員工具Amazon CodeGuru,為提高代碼質(zhì)量和確定應(yīng)用程序中最昂貴的代碼行提供智能建議。Amazon CodeGuru Reviewer通過掃描關(guān)鍵問題、找出錯誤以及為如何修復(fù)這些問題提供建議來幫助提升代碼質(zhì)量。Amazon CodeGuru Profiler幫助開發(fā)人員發(fā)現(xiàn)應(yīng)用程序中最昂貴的代碼行,并提供關(guān)于如何改進(jìn)代碼節(jié)約成本的特定可視化和建議??蛻糁恍柙贏WS控制臺點(diǎn)擊數(shù)下即可使用Amazon CodeGuru,并僅需按Amazon CodeGuru的實際使用量付費(fèi)。Amazon CodeGuru非常簡單且經(jīng)濟(jì)實惠,適用于機(jī)構(gòu)運(yùn)行的每個代碼審查和應(yīng)用程序。請訪問:http://aws.amazon.com/codeguru使用Amazon CodeGuru。

和亞馬遜一樣,AWS的客戶也編寫很多代碼。軟件開發(fā)是一個很好理解的過程,開發(fā)人員編寫代碼,然后審查、匯編代碼并部署應(yīng)用程序,測量應(yīng)用程序的性能,并使用這些數(shù)據(jù)來改進(jìn)代碼。然后,他們排除錯誤代碼,并不斷重復(fù)這些操作。然而,如果一開始代碼就是不正確的,那么所有這些過程都變得毫無意義,這就是為什么團(tuán)隊在將新代碼添加到現(xiàn)有應(yīng)用程序代碼庫之前要執(zhí)行代碼審查來檢查邏輯、語法和樣式。哪怕是亞馬遜這樣的大型機(jī)構(gòu)也會面臨這樣一項挑戰(zhàn):考慮到每天都會編寫大量的代碼,需要擁有足夠豐富經(jīng)驗的開發(fā)人員可以有足夠空閑的時間來進(jìn)行代碼審查。而即使最有經(jīng)驗的審查人員也可能會忽略影響到客戶應(yīng)用程序的問題,從而導(dǎo)致錯誤和性能問題。應(yīng)用程序啟動和運(yùn)行后,開發(fā)人員仍然需要監(jiān)測性能,確保其高效運(yùn)行。通常情況下,開發(fā)人員通過日志記錄來監(jiān)測應(yīng)用程序性能,這樣他們可以觀察應(yīng)用程序完成任務(wù)需要多少時間。然而,日志記錄執(zhí)行起來很麻煩(要求開發(fā)人員對應(yīng)用程序的每一項函數(shù)進(jìn)行測試),會對應(yīng)用程序性能產(chǎn)生負(fù)面影響,并且不能衡量影響計算成本的CPU利用率等指標(biāo),從而使開發(fā)人員缺少工具來有效確定生產(chǎn)環(huán)境中應(yīng)用程序的成本節(jié)省機(jī)會。運(yùn)行需要進(jìn)一步優(yōu)化的應(yīng)用程序,通常會給組織帶來不必要的額外成本(有時高達(dá)數(shù)千萬美元),這是因為這些應(yīng)用程序的CPU和基礎(chǔ)設(shè)施消耗量比本應(yīng)消耗的要多。

Amazon CodeGuru是一項新的開發(fā)人員服務(wù),使用機(jī)器學(xué)習(xí)來自動化應(yīng)用程序開發(fā)期間的代碼審查和生產(chǎn)環(huán)境中應(yīng)用程序的分析。Amazon CodeGuru的兩個組件是:

  • 代碼審查工具:開發(fā)人員可以使用機(jī)器學(xué)習(xí)支持的Amazon CodeGuru Reviewer自動標(biāo)記偏離最佳實踐的常見問題(可能導(dǎo)致生產(chǎn)問題),同時還提供關(guān)于如何修復(fù)這些問題的具體建議,包括示例代碼和相關(guān)文檔鏈接。對于代碼審查,開發(fā)人員像平常一樣將代碼提交給他們選擇的代碼托管服務(wù)(如GitHub、GitHub Enterprise、Bitbucket Cloud、AWS CodeCommit),并添加Amazon CodeGuru Reviewer作為代碼審查工具之一,無需對正常開發(fā)程序做出其他更改。Amazon CodeGuru Reviewer對存儲庫中的現(xiàn)有代碼進(jìn)行分析,以高精確度發(fā)現(xiàn)難以找到的錯誤和關(guān)鍵問題,提供關(guān)于如何修復(fù)這些問題的智能建議,并為連續(xù)的代碼審查奠定基礎(chǔ)。為此,Amazon CodeGuru Reviewer打開一個拉取請求,自動開始使用機(jī)器學(xué)習(xí)模型來評估代碼,這些模型基于亞馬遜數(shù)十年的代碼審查經(jīng)驗和GitHub上的一萬多個開源項目進(jìn)行訓(xùn)練。如果Amazon CodeGuru Reviewer發(fā)現(xiàn)了一個問題(如線程安全問題、使用未經(jīng)殺毒的輸入、不適當(dāng)?shù)靥幚砻舾袛?shù)據(jù),如憑證、資源泄漏、冗余復(fù)制和粘貼代碼、偏離使用Java和AWS API的最佳實踐等),它將在拉取請求中添加一個人類可讀的注釋,標(biāo)識代碼行、具體問題和修復(fù)建議。Amazon CodeGuru Reviewer還提供拉取請求儀表盤,列出所有代碼審查的信息(如代碼審查狀態(tài)、分析的代碼行數(shù)和建議的數(shù)量)。用戶也可以通過點(diǎn)擊向上或向下圖標(biāo)來提供有關(guān)CodeGuru Reviewer建議的反饋,這將有助于隨著時間的推移使用機(jī)器學(xué)習(xí)來改進(jìn)建議。
  • 應(yīng)用程序分析工具:開發(fā)人員可以使用機(jī)器學(xué)習(xí)支持的Amazon CodeGuru Profiler來識別最昂貴的代碼行(預(yù)估可能節(jié)省的成本),幫助他們了解應(yīng)用程序的運(yùn)行時間行為(包括通過AWS Lambda或AWS Fargate運(yùn)行的無服務(wù)器應(yīng)用程序),識別和消除代碼低效性,提高性能,并顯著降低計算成本。例如,亞馬遜的內(nèi)部團(tuán)隊在3萬多個生產(chǎn)應(yīng)用程序上使用了Amazon CodeGuru Profiler,從而節(jié)省了數(shù)千萬美元的計算和基礎(chǔ)設(shè)施成本。此外,2017年至2018年,亞馬遜消費(fèi)者業(yè)務(wù)支付團(tuán)隊使用Amazon Code Guru Profiler在一年一度的購物狂歡日——Prime Day -- 提高了效率,并將應(yīng)用程序的CPU利用率提高了325%,成本降低了39%。想要開始使用Amazon CodeGuru Profiler,客戶只需在應(yīng)用程序中安裝一個小型低配置代理,便可以觀察應(yīng)用程序的運(yùn)行時間,并配置應(yīng)用程序以檢測代碼質(zhì)量問題(如重新創(chuàng)建昂貴對象、使用低效庫、評估空值或未定義值等)以及延遲和CPU利用率的詳細(xì)情況。然后,Amazon CodeGuru Profiler使用機(jī)器學(xué)習(xí)來自動識別代碼方法(可重復(fù)使用的代碼塊,也稱為函數(shù))以及對延遲和CPU利用率影響最大的異常行為。這些信息匯集在一個配置文件中,清楚地顯示了最低效的代碼領(lǐng)域,并提供識別正在產(chǎn)生瓶頸的編碼方法的可視化,以及檢測到的異常的時間序列圖。配置文件包括關(guān)于開發(fā)人員如何解決問題提高性能的建議,并估計繼續(xù)運(yùn)行低效代碼的成本(以美元計),以便開發(fā)人員可以優(yōu)先考慮修復(fù)。開發(fā)人員現(xiàn)在可以利用與亞馬遜部署的相同技術(shù)來提高應(yīng)用程序性能和客戶體驗,同時消除最昂貴的代碼行。

Amazon Web Services, Inc.亞馬遜機(jī)器學(xué)習(xí)副總裁Swami Sivasubramanian表示:“我們的客戶開發(fā)和運(yùn)行許多應(yīng)用程序,這些應(yīng)用程序由數(shù)百萬行代碼組成。確保代碼的質(zhì)量和效率非常重要,因為哪怕只有幾行代碼出現(xiàn)錯誤和低效,機(jī)構(gòu)也付出非常大的代價。目前,發(fā)現(xiàn)代碼質(zhì)量問題的方法是人工進(jìn)行的,非常耗時且容易出錯,特別是在有大量代碼需要審查時。CodeGuru結(jié)合亞馬遜數(shù)十年大規(guī)模開發(fā)和部署應(yīng)用程序的經(jīng)驗以及大量的機(jī)器學(xué)習(xí)專長,為客戶提供服務(wù),提高他們的軟件質(zhì)量,提高他們的應(yīng)用程序性能,并幫助他們消除最昂貴的代碼行?!?/p>

Amazon CodeGuru今天在美國東部的北弗吉尼亞州和俄亥俄州、美國西部的俄勒岡州、歐盟的愛爾蘭、倫敦、巴黎和斯德哥爾摩以及亞太區(qū)的新加坡、悉尼和東京面市,接下來的幾個月還將在其他更多地方面市。

消息來源:AWS
相關(guān)股票:
NASDAQ:AMZN
China-PRNewsire-300-300.png
全球TMT
微信公眾號“全球TMT”發(fā)布全球互聯(lián)網(wǎng)、科技、媒體、通訊企業(yè)的經(jīng)營動態(tài)、財報信息、企業(yè)并購消息。掃描二維碼,立即訂閱!
collection