2014-01-08 72 views
4

我正在使用boost :: asio在ssl服務器上工作。我正在儘可能減少每個ssl連接的內存使用量。用boost :: asio ssl服務器減少每個連接的內存使用量

我的代碼主要來源於 boost::asio::ssl example服務器示例。這意味着我保存會話的會話類對象,具有的SSLContext屬性,註冊read_handler等(相當多,因爲它是在本例中)

所有我能找到的是使SSL_MODE_RELEASE_BUFFERSSSL_OP_NO_COMPRESSION的optimalization。而現在我每個連接大約55kB。

但是根據this thread,您可以將內存使用量降低到11kB。

有什麼我可以做的,以減少這種使用?

操作系統:Ubuntu的11.04和增壓版本:1_55

回答

1

對我來說其重要的問題,所以我研究過了一點。

目前asio :: ssl引擎實現至少有34kB的內存開銷。你可以在源代碼stream_core.hppmax_tls_record_size中看到它。工具證實了這一點。但是,我沒有設法找到如何避免這種情況,因爲這些緩衝區在io_op中被深度使用。