jmeter壓測org.apache.http.conn.HttpHostConnectException: Connect to 127.0.0.1:8999 [/127.0.0.1] fail


jmeter 如何解決org.apache.http.conn.HttpHostConnectException: Connect to 127.0.0.1:8999 [/127.0.0.1] failed: Connection refused (Connection refused) 問題

在這里插入圖片描述
這里先檢查url接口鏈接是否正確,我這里正常
在這里插入圖片描述
在請求 -高級里邊設置為java

含義【jmeter客戶端實現方式有三種,一種是java,一種是httpclient4,還有一種默認,我們來看一下java與httpclient4的區別:

Java:選擇壓測時,鏈接是復用的(代碼中的http調用都加了連接池)
httpclient4:壓測時,每請求一次都創建一個新的鏈接,(jmeter5.0以前默認關閉了連接復用,5.0上是打開的:即每請求一次都會創建一個新的鏈接)

從JMeter 5.0開始,當使用默認的HC4實現時,JMeter將在每個線程組迭代時重置HTTP狀態(SSL狀態+連接)。如果您不想要此行為,請設置httpclient.reset_state_on_thread_group_iteration = false

所以httpclient4 在連接復用設置打開的情況下,壓測結果與java的是不一樣的,因為java復用鏈接,httpclient4每次連接都會重新建立tcp連接,如果httpclient4吞吐量過低,需要考慮網絡帶寬的限制

java實現適合壓榨性測試,httpclient4適合真實場景的模擬
連接池的作用於原理:

正常訪問數據庫的過程中,每次訪問都需要創建新的連接,這會消耗大量的資源;連接池的就是為數據庫連接建立一個“緩沖區”,預先在緩沖池中放入一定數量的連接對象,當需要建立數據庫連接時,只需從“緩沖池”中取出一個,使用完畢之后再放回去;且連接池允許多個客戶端使用緩存起來的連接對象,這些對象可以連接數據庫,它們是共享的、可被重復使用的;使用連接池可以節省大量資源,提高程序運行速度。

連接池的基本原理是:先初始化一定的數據庫連接對象,並且把這些連接保存在連接池中。這些數據庫連接的數量是由最小數據庫連接數來設定的。連接池的最大數據庫連接數量限定了這個連接池能占有的最大連接數,當應用程序向連接池請求的連接數超過最大連接數量時,這些請求將被加入到等待隊列中。當程序需要訪問數據庫的時候,如果連接池中有空閑的連接,可直接得到一個連接;如果連接池對象中沒有空閑的連接,且連接數沒有達到最大,會創建一個新的連接從連接池中取出一個連接,數據庫操作結束后,再把這個用完的連接重新放回連接池。】
在這里插入圖片描述
這里解釋借鑒於添加鏈接描述

改為java后已解決
在這里插入圖片描述

 

轉載自:https://blog.csdn.net/R_miss/article/details/112178290


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM