iT邦幫忙

0

後端C# WebApi與前端javascript jQuery抓資料速度的問題

  • 分享至 

  • xImage

請教後端使用C#寫的WebApi,用Postman去測試抓資料時,就算Select * 抓出所有欄位,在postman上顯示的Time也都在500ms不到1秒第二次點通常300ms,
但前端用javascript jQuery去抓api資料時,可以很明顯感覺網頁顯示出資料不是立即,而是點下去時沒有資料約1秒後才展開,而且是只是抓分頁第1頁10筆,原本以為是後端慢,但用postman按下去非常快就顯示,
webapi是不是都很慢,因為我之前串接微軟的webapi更慢,資料出來已經不是ms都是s秒起跳,而且不是用前端程式去串,是用像asp程式去串

看更多先前的討論...收起先前的討論...
jagerhu iT邦新手 5 級 ‧ 2022-03-25 09:59:32 檢舉
瀏覽器還需要幫你render內容出來,就算你只在瀏覽器上純粹輸出return的內容,也會比postman稍微慢那麼一點點
Jason iT邦新手 4 級 ‧ 2022-03-25 10:01:22 檢舉
我測試過將api上傳至測試server時使用的是另一台測試sql, 這樣的xhr time 都約在200ms~500ms之間,但若我將api放在我的local iis或Visual Studio 執行,資料庫不變還是連同一台,time的只需10ms之間,相差超多
jakeuj iT邦新手 5 級 ‧ 2022-03-25 10:49:15 檢舉
@Jason 要看你資料庫放在哪,如果你開發機跟DB放一起,然後你測試機放很遠回連到你開發機的機房DB,那就會很明顯你本地測試很快。另外是測試機的規格跟所在機房網路問題,如果測試機低配,又有其他服務在上面跑,那也會比較慢。
Jason iT邦新手 4 級 ‧ 2022-03-25 11:16:53 檢舉
db不變都是同一台放在機房的測試機沒有用我本機的,api的程式用我自已電腦測很快,但傳到測試api機器就變很慢
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

2 個回答

2
天黑
iT邦研究生 5 級 ‧ 2022-03-24 11:25:00

前端的部分可以用瀏覽器偵錯模式確認實際呼叫時間,Network可以看到,理論上時間會跟postman差不多,可以簡單確認問題在哪方面

https://ithelp.ithome.com.tw/upload/images/20220324/20138525ryyZmjPF2s.png

Jason iT邦新手 4 級 ‧ 2022-03-25 10:01:37 檢舉

感謝

Jason iT邦新手 4 級 ‧ 2022-03-25 10:01:53 檢舉

我測試過將api上傳至測試server時使用的是另一台測試sql, 這樣的xhr time 都約在200ms~500ms之間,但若我將api放在我的local iis或Visual Studio 執行,資料庫不變還是連同一台,time的只需10ms之間,相差超多

0

一般瀏覽器來說,還需要+上渲染畫面的時間。
基本上來說,你如果想試速度的話。可以先不要秀出來。
單純回應「已取得」。這樣的時間才是正確的。

畢竟渲染畫面還是需要經由前端語言幫你處理輸出。多一層工當然時間會比較久。

我要發表回答

立即登入回答