請教各位前輩大神,現在遇到一個問題,做移動開發,訪問服務器IIS上部署的API介面,目前的現象是APP每次打開后的幾秒內連接超時,不設定超時時間也要很久,快則5,6秒慢則10秒以上才能連接成功,但是一旦連接成功后速度都很快,基本在1秒以下,在本地除錯時沒有出現過,只在服務器上出現;
通過寫日志發現第一次提交訪問,其實已經連接成功,處理也很快,但是到回傳資料的時候,就卡住了,發起連接的無論是移動端或是寫的測驗客戶端都要很久才能接受到資料。
按照網上查詢到的預加載設定,也做了配置,但是沒有效果,而且現象也有點區別,不是長時間沒訪問后IIS回收,是馬上重新打開APP連接就會超時。
這個問題已經折騰很久了,目前只能做判斷超時就重新呼叫介面,太麻煩了,體驗很差。
請教可能問題出現在哪,能否提供些思路?
服務器是在阿里云上,一旦連接成功后,訪問速度很快,應該不是服務器性能或網路問題。
uj5u.com熱心網友回復:
你意思是,打開app第一次訪問就慢,后面操作起來就不慢?然后關了,在開app,還是如上的問題?
那介面方面,有對用戶的操作進行什么校驗或者過濾嗎?
本地除錯沒有這個問題。
那么是不是應該說明服務器可能存在問題呢。
uj5u.com熱心網友回復:
是的,每次重新打開后會重現這個問題,但只在服務器上,本地沒有;校驗問題應該也不存在,默認首次鏈接是登錄驗證身份,但如果不退出APP,只是退出登錄,重新呼叫也是瞬間就完成了,并沒有延遲,而且根據目前寫的除錯日志,第一次訪問介面時,介面代碼里處理業務及訪問資料庫都是正常的到回傳資料都是很快,1秒不到就處理完成了,但是回傳的資料APP端就要很長時間才能接受到
uj5u.com熱心網友回復:
網路問題,請教網管,你可以做個簡單介面,不訪問任何資料庫,直接回傳手寫的資料,看看第一次慢不慢。uj5u.com熱心網友回復:
試過了,第一次也慢,重新部署的介面只回傳寫死的資料(在同一個服務器)uj5u.com熱心網友回復:
不知道你用的框架是什么,如果有用到反射的話,第一次確實會比較慢uj5u.com熱心網友回復:
除錯下,看看dns決議緩慢,還是程式啟動緩慢,還是代碼緩慢。uj5u.com熱心網友回復:
用的.net,語言是C#
uj5u.com熱心網友回復:
看了,目前除錯,程式啟動正常,代碼執行也很快,就是最后回傳,查了IIS日志,有這樣的狀態碼200 0 64;對這塊不太了解,查詢后說是“指定的網路名不再可用”,不知道是不是和這個相關,如果相關,導致這個情況的原因可能有哪些?
uj5u.com熱心網友回復:
如果是剛部署完iis,第一次打開首頁慢,這不是問題,因為iis啟動程式需要時間。如果沒動iis,而是每次打開首頁都會很慢,那這個也跟iis無關,是程式的問題,檢查介面。
如果是每隔一段時間,就會出現打開首頁慢的問題,那這個需要設定預加載。
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/93426.html
標籤:ASP.NET
下一篇:EWS API 使用的問題
