我正在优化我的网站以通过不同的域提供静态资产,从而减少下载/上传带宽并且更容易缓存。
现在,我正在使用带有 NGINX 和Passenger 的Rails 3.1。
到目前为止,我已经设置了系统,以便所有资产都通过与我现在拥有的类似的域提供服务(它不是子域,而是不同的域......这样来自真实域的任何 cookie 都不会在请求中传输)。NGINX 服务器有以下配置:
server {
listen 80;
server_name similarwebsite.com;
root /path/to/static/files;
}
server {
listen 80;
server_name website.com;
root /path/to/rails/files/public;
}
我发现拥有一个单独的资产环境比 Rails 更好(我真的不喜欢所有 Rack 抽象,它们只是为了交付一些简单的资产)。
现在我的问题仍然存在,我是否应该将静态文件拆分到不同的 HTTP 服务器上,比如 thttpd?目前它们都在同一台机器上运行,但所有资产都将通过 thttpd 和所有 rails 东西通过 nginx 传递。thttpd 实例可以在不同的 IP 或端口上运行。只是想知道这是否会使它更快。
有任何想法吗?我走得太远了吗?