我正在嘗試使用Ruby on Rails 3來實現Web服務和Web客戶端應用程序。爲此,我正在考慮使用SSL,但我想知道:服務器如何處理大量HTTPS連接而不是HTTP?響應時間和性能有什麼不同?服務器通過HTTPS傳輸數據有多沉重?
回答
現在,SSL/TLS握手(佔用大部分「減速」SSL/TLS添加的成本)的成本遠低於TCP連接建立成本以及與會話建立相關的其他操作(日誌記錄,用戶查找等) )。如果您擔心速度並希望節省時間,則可以安裝硬件SSL加速器,以便將其安裝到服務器上。
使用HTTPS的速度比使用HTTPS慢幾倍,但是,大多數情況下,實際上這並不會降低應用的速度。特別是如果你在Rails上運行,你的性能擴展將成爲系統其他地方的瓶頸。如果您正在做任何需要通過網絡傳遞任何種類祕密(包括共享會話cookie)的任何內容,則SSL是唯一可行的方法,您可能不會注意到成本。如果您碰巧擴展到開始看到加密帶來的性能降低的地步,那麼硬件加速設備將非常有幫助。然而,在那之前很長時間,鐵軌可能會下降。
第一次Web客戶端與Web服務建立SSL連接後,傳輸將繼續工作,而不必重新打開該SSL? – user502052 2011-03-05 15:01:18
@user:只要套接字保持打開狀態,但HTTP1.1默認爲保持活動連接模式。 – jricher 2011-03-06 16:40:37
- 1. 表格數據從iPhone上傳到PHP服務器通過https
- 2. PHP fopen:數據是否通過中間服務器傳輸?
- 3. HtttpResponseException:通過JSON傳遞輸入數據到服務器
- 4. 重定向通過HTTPS服務到http
- 5. 通過HTTPS向對方發送XML數據包的服務器
- 6. 如何通過HttpsURLConnection發送數據到https服務器
- 7. 通過WCF服務傳輸大量數據(超過64kb)
- 8. Git通過https在debian服務器上
- 9. Ember CLI服務器通過HTTPS
- 10. 通過Angular 2服務傳遞數據
- 11. 服務器之間的數據傳輸
- 12. Flume:將數據傳輸到服務器
- 13. 從HTTP服務器到TCP服務器的數據傳輸
- 14. 通過web服務按需流式傳輸數據
- 15. 通過多個傳輸提供通知的Web服務
- 16. 保護服務器到服務器PHP通信沒有HTTPS
- 17. 如何上傳數據到服務器並通過後臺服務在android中從服務器下載數據?
- 18. 通過HTTPS訪問遠程服務器服務
- 19. 通過JFrames傳輸數據
- 20. 跟蹤通過https傳輸的數據的工具
- 21. SQL服務器:通過主數據庫
- 22. SSIS - ETL - 從多臺服務器傳輸表/數據庫?
- 23. Web服務器和數據庫服務器之間的安全數據傳輸
- 24. 通過WCF客戶端將大型數據對象傳輸到WCF服務器
- 25. 使用定製服務器通過http進行安全數據傳輸
- 26. 是否可以通過http傳輸客戶端到服務器的數據?
- 27. 如何通過IP地址將數據傳輸到Web服務器?
- 28. 主數據服務傳輸數據
- 29. 通過POST將數據傳遞到服務器
- 30. 如何通過文件上傳到服務器發送數據
Mayevski'EldoS感謝您的回覆。正如我對@jricher所說的,在Web客戶端第一次建立與Web服務的SSL連接之後,傳輸將繼續進行,而不必重新打開該SSL? – user502052 2011-03-05 15:04:03
@ user502052如果HTTP連接保持活動狀態(套接字未斷開連接並重新連接),則SSL/TLS會話也保持活動狀態。如果套接字重新連接,則會發生另一個TLS握手。在後一種情況下,某些客戶端和服務器支持SSL會話恢復,如果他們這樣做,則握手執行得更快。 – 2011-03-05 15:17:10