2010-11-09 125 views
3

只是关于反向代理和性能的几个问题。反向代理规则是否会影响Apache反向代理的性能?

如果我的反向代理中有太多规则,会对性能产生影响吗?

例如,如果我有200条规则,是类同如下:

ProxyPass  /website/test/   http://www.example:8080/web/test 
ProxyPassReverse /website/test/   http://www.example:8080/web/test 

会不会有性能的提高,如果我有100个,如果我有1000会发生什么?

如果我使用重写规则,我的反向代理性能会更好吗?

在此先感谢。

回答

2

要获得准确的数字,人们必须对此进行基准测试,并且最好使用您的架构,软件版本和服务器。不过想起来是这样的:

  • 一个ProxyPass规则导致一个字符串比较,通过使用PCRE导致probaby。
  • 所有ProxyPassReverse规则都会针对5个标头字段导致字符串比较(并可能会搜索&替换)。
  • 您的生产服务器可能每秒处理大约5百万以上的ProxyPass和1百万以上的ProxyPassReverse操作。

但请注意,您可能不需要这么多的节。你可以做这样的事情

ProxyPass  /website/test/   http://www.example:8080/web/test 
ProxyPass  /website/test2/   http://www.example:8080/web/test2 
ProxyPassReverse /website/     http://www.example:8080/web 

结合他们有数百的ProxyPass和ProxyPassReverse的节可能不会打扰你太多的性能损失,但也没有任何错误,优化配置。

+0

非常感谢! – Dimitar 2011-02-07 14:49:07

+0

很棒的回答。您是否拥有500万以上ProxyPass和1百万以上ProxyPassReverse操作的来源? – 2012-06-08 03:44:51