我有一臺服務器,我的客戶端向其發送帶有一些值的HTTP GET請求。服務器的最後只是將這些值存儲到數據庫中。關於丟失HTTP請求
現在,我注意到有時候我並沒有在數據庫中觀察這些值。下列情況之一可能發生:
- 不會發送它
- 服務器從未收到它
- 服務器無法以書面形式向數據庫
我最大的疑問,客戶端是,原因是2 - 但我無法完全解釋它。由於這是一個HTTP請求(意味着下面有TCP),應該保證GET請求的可靠傳送,對吧?即使我向服務器發送了一個GET請求 - 它從來沒有被服務器接收過嗎?如果是,那麼TCP在那裏做什麼?
或者,我可以自信地斷言,如果服務器啓動並運行,並且發送到服務器的所有內容都寫入數據庫,那麼數據庫中沒有GET請求的詳細信息意味着客戶端永遠不會發送它?
不確定詳細信息是否有幫助 - 但我正在運行一個tomcat服務器,我只是通過get請求發送一個名稱 - 值對。
無論您使用哪種語言來發出http請求,您都必須檢查該操作的結果,並將其打印或記錄下來...... – MarcoS
因此,例如,一些網絡問題和數據包從未到達服務器(因此我不會得到服務器的任何響應) - 至少這種情況應該由TCP處理 - 即 - 重新發送數據包 - 直到我們得到響應爲止? – TheBlueNotebook
是的,最糟糕的是,你會收到一個超時錯誤... – MarcoS