国产亚洲精品福利在线无卡一,国产精久久一区二区三区,亚洲精品无码国模,精品久久久久久无码专区不卡

當(dāng)前位置: 首頁 > news >正文

北京網(wǎng)站優(yōu)化公司如何輿情分析報告模板

北京網(wǎng)站優(yōu)化公司如何,輿情分析報告模板,php wordpress教程,優(yōu)設(shè)網(wǎng)的特點一、request 請求超時設(shè)置 timeout 超時時間是可以手動設(shè)置的,新建一個 http 請求,在“高級”設(shè)置中找到“超時”設(shè)置,設(shè)置連接、響應(yīng)時間為2000ms。 1. 請求連接超時,連不上服務(wù)器。 現(xiàn)象: Jmeter表現(xiàn)形式為&#xff…

一、request 請求超時設(shè)置

  timeout 超時時間是可以手動設(shè)置的,新建一個 http 請求,在“高級”設(shè)置中找到“超時”設(shè)置,設(shè)置連接、響應(yīng)時間為2000ms。

  1. 請求連接超時,連不上服務(wù)器。

  現(xiàn)象:

  Jmeter表現(xiàn)形式為:前面幾個請求是成功的,但是后面請求有的會報錯,有的請求成功

  報錯1:

  Response code: Non HTTP response code: java.net.SocketTimeoutException

  Response message: Non HTTP response message: connect timed out

  原因:

  一般是因為線程太多,connection time out error 服務(wù)器請求太多了,處理不過來。

  查看 Load time 的時間要大于 request 設(shè)置的 connect time out 時間,因此拋出該異常。多是因為服務(wù)端有較多請求正在處理且處理時間較長,致使 jmeter 不能連接上服務(wù)器而產(chǎn)生的。

  解決方法:設(shè)置 jmeter http 請求超時conn,重啟server

  報錯2:

  Connection timed out: connect工具

  java.net.ConnectException: Connection timed out: connect

  at java.net.DualStackPlainSocketImpl.connect0(

  原因:

  多是由于端口號耗盡,通常一臺服務(wù)器的端口號最可能是65535個,建議使用該命令分別查看下壓測機(jī)與服務(wù)器的端口使用狀況,netstat -nat|grep -i 8080|wc -l,若是這個個數(shù)在6w左右,那可能就是端口號用盡,同時查看下大多數(shù)的端口狀態(tài),應(yīng)該都是 time_wait 狀態(tài)。

  解決方法:若是壓測機(jī),端口號用盡,那就增長壓測機(jī),使用 jmeter 分布式壓測(jmeter默認(rèn)開啟keep_alive的)

  若是數(shù)服務(wù)器,端口號用盡,最大的多是服務(wù)器端開了短連接,把短連接配置變成長鏈接便可

  如果服務(wù)器端是短連接,當(dāng) jmeter 每發(fā)起一個請求就會創(chuàng)建一次 tcp 三次握手,傳輸完數(shù)據(jù)后,鏈接其實沒有關(guān),鏈接狀態(tài)是 time_wait,下個請求來了會重新開啟一個新的端口,創(chuàng)建tcp三次握手,傳輸數(shù)據(jù)....

  這樣隨著請求的愈來愈多,端口就會變得愈來愈少,因此端口很快耗盡,并且大多數(shù)端口都處于 time_wait 狀態(tài),若是服務(wù)器端也支持長鏈接,那么下次請求來了,就會在上次請求的通道上繼續(xù)傳輸,端口使用率大大的下降,就有效的避免了端口耗盡問題。常規(guī)操作,每個請求可以給個超時時間,避免 http 超時錯誤。

  2. 連接成功,但是讀取超時。

  等不到服務(wù)器返回的數(shù)據(jù),一般是這次請求查詢的量很大,比如查了5度的頂點。(timeout 小于 server 的最大等待時間)read time out error

  jmeter等不到服務(wù)器返回的數(shù)據(jù)就斷開了請求。

  Response code: Non HTTP response code: java.net.SocketTimeoutException

  Response message: Non HTTP response message: Read timed out

  發(fā)生該錯誤時,jmeter 已經(jīng)鏈接上服務(wù)器,查看 load time 沒有超過設(shè)定的 request timeout 時間,錯誤可能的原因是,服務(wù)器那邊未處理該線程的請求,或者為保證服務(wù)能力,斷掉了鏈接。

  為了驗證該猜測,持續(xù)大于半小時向服務(wù)器發(fā)送該并發(fā)數(shù)量的請求,一段時間后,request 收到 503 的 response,證實猜測。

  3. 連接成功,server查詢數(shù)據(jù)時超時

  是因為2中請求的導(dǎo)致的 server 超時機(jī)制,如果查詢時間超過 30s 自動報錯。(timeout大于server的等待時間),在2的基礎(chǔ)上,已經(jīng)設(shè)置很大的響應(yīng)時間了,但是還是 timeout,這個應(yīng)該就是 server 等不到數(shù)據(jù)庫返回的數(shù)據(jù)超時了。

二、壓力機(jī)自身存在的問題

  1.在網(wǎng)絡(luò)編程中,特別是在短時間內(nèi)新建的網(wǎng)絡(luò)連接太多,經(jīng)常出現(xiàn)

  java.net.BindException: Address already in use: JVM_Bind的異常

  Java.NET.BindException: Address already in use: connect

  原因:

  短期內(nèi)新建 socket 操作太多,而 socket.close() 操作并不能當(dāng)即釋放綁定的端口,而是把端口設(shè)置為 time_wait 狀態(tài),過段時間(默認(rèn)240s)才釋放,用netstat -na能夠看到,最后系統(tǒng)資源耗盡(windows上是耗盡了pool of ephemeral ports ,這段區(qū)間在1024-5000之間)

  解決方法:

  在運行 jmeter agent 的機(jī)器上,添加注冊表條目

  HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters

  MaxUserPort 65334

  TcpTimedWaitDelay 30

  jmeter工具運行設(shè)置:

  1. cmd中,用 regedit 命令打開注冊表

  2. 在HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters

  3. 右鍵Parameters

  4. 新建DWORD值,(十進(jìn)制)設(shè)置為30秒。名稱:TcpTimedWaitDelay,值:30。新建DWORD值,(十進(jìn)制)最大連接數(shù)65534。名稱:MaxUserPort,值:65534

  5. 基數(shù)選擇十進(jìn)制;以增大可分配的 tcp 連接端口數(shù)、減小處于 TIME_WAIT 狀態(tài)的連接的生存時間

  6. 修改配置完畢之后記得重啟機(jī)器才會生效

  jmeter 發(fā)送請求后返回java.net.SocketException: Connection reset

  這表明是測試服務(wù)器有問題,可以去頁面驗證下。有可能是要配置客戶端的設(shè)置,如上面的工具運行設(shè)置。

  java.net.SocketException: Socket closed

  step1:

  在 http 請求里面找到高級 implementation 選擇 httpclient 4,connect設(shè)置為15000-300000毫秒。

  step2:

  在 jmeter 安裝目錄的 bin 目錄下,找到 jmeter.properties 并打開。打開425行的注釋,值設(shè)置為1:

  httpclient4.retrycount = 1

  httpclient4.idletimeout=<time in 1000 ms>

  java.lang.OutOfMemoryError: Java heap space

  原因:

  觀察運行 jmeter 機(jī)器的內(nèi)存,占用較高,超過了 jmeter 設(shè)置的內(nèi)存上限。

  解決方案:

  修改 jmeter 配置文件,調(diào)整內(nèi)存可用的范圍服務(wù)器

  修改/bin/jmeter.bat文件:找到這2行

  set HEAP=-Xms256m -Xmx256m

  set NEW=-XX:NewSize=128m -XX:MaxNewSize=128m

  改成:

  set HEAP=-Xms1024m –Xmx2048m(最大值不能超過系統(tǒng)內(nèi)存的1/2)

  set NEW=-XX:NewSize=128m -XX:MaxNewSize=512m網(wǎng)絡(luò)

  { "_t" : "StringResultObject", "status" : 1030, "message" : "服務(wù)器發(fā)生錯誤", "data" : null, "isSuccess" : false }

  如遇到上面請求返回的reponse, 就要首先去服務(wù)器端的日志,通過日志來定位問題

  Failed to initialise remote engine java.rmi.ConnectException: Connection refused to host:

  原因:

  分布式測試時,server 和 agent 之間的鏈接有問題。單個機(jī)器排查后,發(fā)現(xiàn)是某個 agent 機(jī)器安裝了多個網(wǎng)卡,rmi 遠(yuǎn)程的時候找的是虛擬機(jī)的網(wǎng)卡,致使鏈接失敗。

  解決方案:

  禁掉不使用的虛擬機(jī)網(wǎng)卡,測試以后再恢復(fù)

  java.lang.OutOfMemoryError: Java heap space

  原因:

  jmeter 是一個純 java 開發(fā)的工具,內(nèi)存由 java 虛擬機(jī) JVM 管理,當(dāng)內(nèi)存回收不及時,堆內(nèi)存不足時,就會報內(nèi)存溢出錯誤。

  概念補充:

  內(nèi)存泄露:應(yīng)用使用資源之后沒有及時釋放,導(dǎo)致應(yīng)用內(nèi)存中持有了不需要的資源。

  內(nèi)存溢出:應(yīng)用的內(nèi)存已經(jīng)不能滿足正常使用了,堆棧已經(jīng)達(dá)到系統(tǒng)設(shè)置的最大值,進(jìn)而導(dǎo)致崩潰。

  通常都是由于內(nèi)存泄露導(dǎo)致堆棧內(nèi)存不斷增大,從而引發(fā)內(nèi)存溢出。對 jmeter 而言也是如此,jmeter 測試過程中,如果內(nèi)存溢出的話,一般會出現(xiàn)上面的提示:java.lang.OutOfMemoryError: Java heap space意思就是堆內(nèi)存溢出,不夠用了

  解決方法:

  知道了報錯出現(xiàn)的原因是因為堆內(nèi)存大小不足引起的,自然而然就會想到內(nèi)存溢出的解決方法:調(diào)整堆內(nèi)存大小。

  步驟(以Windows系統(tǒng)為例,Linux系統(tǒng)類似):

  1. 打開jmeter.bat文件,按關(guān)鍵字“HEAP”搜索,把原來的配置改為如下:修改前:

  if not defined HEAP (

  rem See the unix startup file for the rationale of the following parameters,

  rem including some tuning recommendations

  set HEAP=-Xms1g -Xmx1g -XX:MaxMetaspaceSize=256m

  )

  )

  修改后:

  if not defined HEAP (

  rem See the unix startup file for the rationale of the following parameters,

  rem including some tuning recommendations

  set HEAP=-Xms512m -Xmx4000m

  set NEW=-XX:NewSize=256m -XX:MaxNewSize=512m

  )

  set HEAP=-Xms512m -Xmx4000m:調(diào)整堆內(nèi)存的大小

  set NEW=-XX:NewSize=256m -XX:MaxNewSize=512m:調(diào)整堆內(nèi)存中新生帶的大小

  PS:

  這個值不是越大越好,要根據(jù)壓測使用的機(jī)器而定,一般而言,堆內(nèi)存的最大值不要超過物理內(nèi)存的一半,否則容易導(dǎo)致 jmeter 運行變慢、卡頓甚至內(nèi)存溢出(因為java本身的垃圾回收機(jī)制是動態(tài)分配內(nèi)存,調(diào)整的時候其本身會占用很多內(nèi)存),NEW分配的內(nèi)存,不宜太大。

  1. 修改完成后保存,重啟JMeter,即可生效。

三、小結(jié)

  1. 這種修改堆大小的方法只適用一部分情況,并不是萬能的,當(dāng)需要模擬的線程數(shù)較大時,就需要根據(jù)具體情況采用分布式壓測的方式了。

  2. 命令行運行 jmeter 時,一定要禁用“查看結(jié)果樹”、“聚合報告”等監(jiān)聽器,因為真的真的真的很消耗內(nèi)存。

  3. 磁盤監(jiān)控工具有iostat & htop。

  4. 網(wǎng)絡(luò)監(jiān)控工具有iftop。

  5. 查看網(wǎng)絡(luò)連接情況可以使用netstat -n | find /I "established" /c。

最后感謝每一個認(rèn)真閱讀我文章的人,禮尚往來總是要有的,雖然不是什么很值錢的東西,如果你用得到的話可以直接拿走:

http://m.aloenet.com.cn/news/44887.html

相關(guān)文章:

  • 自己在線制作logo免費頭像大連網(wǎng)絡(luò)營銷seo
  • 怎么建網(wǎng)站做推廣太原網(wǎng)站關(guān)鍵詞排名
  • 建筑方面的網(wǎng)站起飛頁自助建站平臺
  • 如何用框架做網(wǎng)站搜索引擎優(yōu)化seo的英文全稱是
  • 凡科網(wǎng)站代碼怎么短視頻營銷推廣方式
  • 天津電商網(wǎng)站建設(shè)seo服務(wù)價格表
  • java小說網(wǎng)站怎么做百度一直不收錄網(wǎng)站
  • 深圳官方網(wǎng)站制作搜盤 資源網(wǎng)
  • 哪個網(wǎng)站的體驗做的最好搜索推廣渠道
  • 福建城鄉(xiāng)建設(shè)部網(wǎng)站首頁國內(nèi)哪個搜索引擎最好用
  • 專業(yè)網(wǎng)站建設(shè)空間seo是什么車
  • 上海給政府機(jī)關(guān)做網(wǎng)站開發(fā) 萬農(nóng)產(chǎn)品網(wǎng)絡(luò)營銷方案
  • 福建參觀禁毒展覽館的網(wǎng)站建設(shè)網(wǎng)站設(shè)計公司報價
  • 包頭全網(wǎng)營銷網(wǎng)站建設(shè)seo外包收費
  • 網(wǎng)站建設(shè)智能優(yōu)化seo優(yōu)化技術(shù)排名
  • 直播系統(tǒng)百度seo2022新算法更新
  • 單位做網(wǎng)站需要準(zhǔn)備什么深圳優(yōu)化怎么做搜索
  • 三門峽網(wǎng)站建設(shè)電話熱狗網(wǎng)站排名優(yōu)化外包
  • 北京企業(yè)網(wǎng)站建設(shè)哪家服務(wù)好營銷頁面
  • 知名網(wǎng)站建設(shè)官網(wǎng)網(wǎng)站性能優(yōu)化方法
  • 360免費做網(wǎng)站凡科建站怎么導(dǎo)出網(wǎng)頁
  • 重慶網(wǎng)站排名公司友情鏈接免費發(fā)布平臺
  • 建設(shè)獨立網(wǎng)站的公司嗎長沙seo培訓(xùn)
  • 南寧企業(yè)網(wǎng)站建站模板中文網(wǎng)站排名
  • 租車網(wǎng)站建設(shè)2345網(wǎng)址大全下載到桌面
  • jq 網(wǎng)站頭部廣告代碼大學(xué)生創(chuàng)新創(chuàng)業(yè)大賽
  • 網(wǎng)站集群怎么做網(wǎng)絡(luò)運營推廣合作
  • 做效果圖兼職的網(wǎng)站珠海網(wǎng)絡(luò)推廣公司
  • php網(wǎng)站開發(fā)演講稿鏈接搜索引擎
  • 深圳哪家網(wǎng)站建設(shè)的公司好蘋果cms永久免費全能建站程序