bl双性强迫侵犯h_国产在线观看人成激情视频_蜜芽188_被诱拐的少孩全彩啪啪漫画

go語言測試框架 golang測試框架

Golang web 框架對比

由于 golang 提供了完善的net/http標準庫,基于該標準庫實現一個web框架的難度相比其他語言低了不少,所以go web框架簡直就是百花齊放。從老牌的revel和 beego ,到新出的 gin ,和 iris 等,而且還有一些類似于 chi 這種router。個人一般小項目,尤其是中間件需要暴露一些http接口的,基本就使用chi即可。

為高港等地區用戶提供了全套網頁設計制作服務,及高港網站建設行業解決方案。主營業務為網站制作、成都做網站、高港網站設計,以傳統方式定制建設網站,并提供域名空間備案等一條龍服務,秉承以專業、用心的態度為用戶提供真誠的服務。我們深信只要達到每一位用戶的要求,就會得到認可,從而選擇與我們長期合作。這樣,我們也可以走得更遠!

本次測試主要是gin iris echo 這三個框架。側重在于高性能,從并發和json序列化和反序列化兩個方面來測評,畢竟后臺項目側重的也就是這兩個方面。

為了選擇符合重IO的框架,現設定如下場景的demo,demo的具體要求如下:

gin:

iris:

echo:

由于要測試5種body樣本,4種場景,4個框架,因此把重點數據篩選出來(吞吐量、錯誤率和99%Line,重要性依次遞減),結果都繪制了圖形,方便比對查看。

綜合以上各個測試結果可以看出,gin以及iris都是非常優秀的框架,gin的優勢比其他稍微大點,iris次之,而echo相應差一點。

本次測試只是簡單測試了一下3個框架的并發和json相關。對比結果,不包括生態和工具的完善度等等。如果測試有什么不完善的地方,歡迎交流。

另外歡迎大家試用和star另外一個web框架 baa ,為了避嫌我沒有貼出baa的數據,性能測試處于gin之后和iris之間。

Go語言使用gorm對MySQL進行性能測試

之前寫過了Go語言gorm框架MySQL實踐,其中對gorm框架在操作MySQL的各種基礎實踐,下面分享一下如何使用gorm框架對MySQL直接進行性能測試的簡單實踐。

這里我使用了一個原始的Go語言版本的 FunTester 測試框架,現在只有一個基本的方法,實在是因為Go語言特性太強了。框架設計的主要思路之一就是利用Go語言的閉包和方法參數特性,將一個 func() 當做性能測試的主題,通過不斷運行這個 func() 來實現性能測試。當然還有另外一個思路就是運行一個多線程任務類,類似 Java 版本的 com.funtester.base.constaint.ThreadBase 抽象類,這樣可以設置一些類的屬性,綁定一些測試資源,適配更多的測試場景。

下面演示select的性能測試,這里我用了隨機ID查詢的場景。

這里我使用從35開始遞增的ID進行刪除。

這里使用了select的用例部分,隨機ID,然后更新name字段,隨機10個長度的字符串。

這里用到了 FunTester 字段都是隨機生成。

到這里可以看出,性能測試框架用到的都是gorm框架的基礎API使用,這里MySQL連接池的管理工作完全交給了gorm框架完成,看資料說非常牛逼,我們只需要設置幾個參數。這個使用體現很像 HttpClient 設置 HTTP 連接池類似,這里我們也可以看出這些優秀的框架使用起來都是非常簡單的。

PS:關于gorm的基礎使用的請參考上一期的文章Go語言gorm框架MySQL實踐。

golang性能測試框架k6源碼分析

k6是新興的性能測試框架,比肩jmeter,另外測試腳本使用js,更加適合自動化的架構。

k6啟動的框架是使用golang的cli標準框架cobra,入口函數

進入cobra框架后,我們直接查看getRunCmd,這個是命令run的入口,主要工作都是從這里開始。

重點關注初始化Runner,這個是通過js腳本,使用goja庫解析后,生成的實際執行單元。

進入js目錄,查看Runner的結構,runner.go

Runner有一些配置屬性,另外還有方法,方法用lib.Runner的接口進行規范。

Runner有一個NewVU方法,里面定義了連接參數,實現api測試

返回主函數,在初始化完成Runner后,啟動調度器,以及做結果收集

最終封裝成一個engine

啟動測試

分享文章:go語言測試框架 golang測試框架
當前URL:http://vcdvsql.cn/article6/hepoig.html

成都網站建設公司_創新互聯,為您提供網站策劃網站排名網站導航網站改版App開發企業建站

廣告

聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯

成都seo排名網站優化