Libmicrohttpd的限制是什么?

时间:2018-01-22 11:02:07

标签: c++ c linux http

我想基于库Libmicrohttpd开发一个http服务器。

我想知道在Libmicrohttpd可以支持的同时连接的用户的限制数量是多少。

1 个答案:

答案 0 :(得分:1)

嗯,这取决于很多因素:

  • 由于HTTP适用于TCP,因此您需要确定服务器一次能够支持的TCP连接数。我建议做一些基准测试来获得一个想法。您可以使用Apache Bench和/或Apache JMeter。或者,您可以使用libcurl编写自己的基准测试应用程序。
  • 另一件事是您的操作系统可以支持的套接字数量。根据操作系统的不同,您可能需要调整/调整这些值。在Linux上,您可以使用ulimit命令。而且,在Windows上,您可能需要配置注册表。
  • 另一个重要的事情是连接可能带来的有效负载以及服务器必须执行的处理。您需要为某些预定义的数据量(例如,64KB或1MB)执行基准测试。在此上下文中,您可能希望尽快处理所有数据。套接字具有固定大小的积压。那些也需要配置。这意味着你需要更多的内存,以便更大的RAM大小或一些微调操作系统的东西。所以,这里的记忆是一个瓶颈。
  • 连接超时也很重要,但如果您想考虑基准测试中的那些,则需要考虑这一点。取决于服务器对连接的处理。

您还可以查看c10k问题以获得一般性建议。请参阅this相关文章。

这些是我能想到的。如果我记得的话,我会更新我的答案。

希望这有帮助!