晚輩不才,網上沒有找到滿意的信息,特來請教大家。
先說我對iis的理解:瀏覽器端發送socket請求報文,服務器端的iis接收完報文,iis把報文轉送給aspnet_isapi.dll處理。我的理解正確嗎?
如果理解正確,那么在web.config里設置maxRequestLength=“4000”,這種方式就不能很好的解決上傳過大的文件對服務器內存帶來的壓力。
大家知道,socket接收一個報文時,常常要調用receive函數多次,才能接收完一個報文。
那么有什么方法,可以在每次iis調用receive函數后,對已經接收的數據的大小進行判斷呢?
當發現已經接收的數據大於某個值時,服務器就能調用close(socket)關閉此連接,這樣可以很好的解決用http協議上傳過大文件時服務器內存面臨的壓力問題。
以上是晚輩的戳見。希望前輩們能解答我的疑問。
