3

我尝试在网上搜索,90% 的时间都遇到了详细说明“如何”使用 Apache 实现反向代理的页面。

我在想反向代理插件是如何编码的?

  1. 我知道他们解析请求并查看它应该被路由到哪个服务器。
  2. 然后他们是否为来自最终用户的每个连接创建一个线程,然后委派该线程连接到正确的服务器的责任。
  3. 继续接受来自其他客户端的更多请求并创建类似的线程。
  4. 当线程从服务器获得响应时,将其回复给客户端。并关闭线程。还是他们有线程池?

我正在从 C++ 角度考虑它。如果使用多线程来增加代理的吞吐量。

如果我的问题根本上是错误的,请原谅我的无知。

任何具有相关技术信息的链接或教程将不胜感激。

4

1 回答 1

3

有点过时,但非常值得一读 - http://www.kegel.com/c10k.html。读完之后,您应该对为什么每个连接一个线程是一个非常糟糕的主意有了一个很好的了解。如果您对了解如何实现可扩展或高性能服务器真的很感兴趣,我建议您深入研究并阅读一些源代码。我特别喜欢 Apache HTTPD 的源代码。

于 2013-02-28T00:49:06.997 回答