Apache 代理后面的 GAE 开发服务器有时很慢

Apache 代理后面的 GAE 开发服务器有时很慢

由于 Google App Engine 开发服务器每次仅提供一个文件,因此我决定通过以下方式提供静态资源:Apache 2.2.17 / XAMPP 1.7.4 / WinXP32. 使用 Apache 的“ProxyPass”,动态创建资源的请求被路由到 GAE 开发服务器。总体来说运行可靠且快速。

但是,当通过 Apache 访问时,动态创建的资源有时需要很长时间才能加载。起初我以为这是由于 GAE 开发服务器响应缓慢造成的。但是当直接从 GAE 开发服务器加载相同的资源时,响应是总是快速地。

造成这些响应缓慢的原因可能是什么?

Apache 日志摘录(注意从 10:10:42 到 10:10:53 的等待):

[Fri Aug 05 10:10:42 2011] [debug] proxy_util.c(2444): proxy: HTTP: fam 2 socket created to connect to localhost
[Fri Aug 05 10:10:42 2011] [debug] proxy_util.c(2576): proxy: HTTP: connection complete to 127.0.0.1:8080 (localhost)
[Fri Aug 05 10:10:53 2011] [debug] mod_proxy_http.c(1735): proxy: start body send
[Fri Aug 05 10:10:53 2011] [debug] mod_proxy_http.c(1839): proxy: end body send

Apache 配置,缩写:

NameVirtualHost 127.0.0.1:8081
Listen 127.0.0.1:8081
<VirtualHost 127.0.0.1:8081>
    ProxyPass /demo/images !
    ProxyPass / http://localhost:8080/
    ProxyPassReverse / http://localhost:8080/

    Alias /demo/images "C:/Scratch/realitybuilder/demo/images"
    <Directory "C:/Scratch/realitybuilder">
        Options Indexes FollowSymLinks Includes ExecCGI
        AllowOverride All
        Order allow,deny
        Allow from all
        AddDefaultCharset utf-8
    </Directory>
</VirtualHost>

答案1

我在使用 Apache 作为 GAE 开发的反向代理时也遇到了类似的问题。我最终通过切换到nginx。它更快,也更容易配置。您可以查看示例配置这里

相关内容