http://blog.sina.com.cn/s/blog_4cef5c7b0101i7fu.html

一般商用的服务器搭建基于以上就可以运行良好,nginx作为HTTP层的代理服务器、Tomcat作为Webserver、同时配置静态资源缓存机制实现动静分离;

如果考虑到多IP区域部署的话,通过DNS智能制定就可以提供。

更大规模的本人没有过实际商用经验

这里有必要普及一下,服务器的架构分工演变的演进史,可以猛击这里:http://kb.cnblogs.com/page/109876/

实际调优总结点:

1、动静访问分离:正常的网页业务不仅仅是HTTP POST一个请求处理,还涉及到很多静态png\css\js等等的加载,为了减少业务服务器的不必要的负担,保证其好钢用在刀刃上。我们需要使用squid Varnish nginx cache等等静态加速器;

本案适用的是nginx 自带的cache,具体详细设置请见本文的【【【【附件】】】:

http://download.csdn.net/detail/shuzui1985/5065063

location ~ .*.(gif|jpg|jpeg|png|bmp|swf|css|js|html|htm)$
{
#root /home/webos/sam/html;
proxy_pass http://localhost ;
#proxy_pass http://squid3server ;
##proxy_set_header Host $host;
##proxy_set_header X-Real-IP $remote_addr;
##proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_redirect off;
proxy_set_header Host $host;
proxy_cache cache_one;
proxy_cache_valid 200 302 1h;
proxy_cache_valid 301 1d;
proxy_cache_valid any 1m;
expires 30d;
}

2、 nginx代理服务器的nginx.conf 配置优化:

   a) worker_processes 4; 开启的工作进程最好与你的硬件CPU个数一致,一味的加大processes,会使得系统的切换开销增大得不偿失

   b) worker_rlimit_nofile 20000; 设定软配置每个进程的文件HANDLE打开数设置的尽量大,同时需要注意将linux系统中的该设置修改到20000以上最好.       

     ulimit -n  这个数字说明了一个普通用户能够在一个单独会话中所能打开最大的文件数目。注意。如果是root,以下操作不能使ulimit -n的输出增加。因为用户root用户不受这个ulimit限制。只有普通用户才会受这个限制。 

     修改方法

        /etc/security/limits.conf

     修改

         * soft nofile 20000             * hard nofile 20000

   c) proxy_connect_timeout 180;
       proxy_read_timeout 180;
       proxy_send_timeout 180; //将nginx与后端的tomcat连接超时,上行超时,下行超时的时间都设置的尽量大,范围大并发的情况下出现502 504.

3、进一步的nginx与tomcat优化点

nginx 与后端的服务器连接默认是使用的http 1.0,这个大家应该都了解,如果设置为HTTP1.1 复用链接的话就会大大降低了tcp开销,节省系统资源

upstream nginx_test {
   server 192.168.128.128:8080 weight=5;
   server 192.168.128.132:8080 weight=5;
   keepalive 20;
  # 设置持久连接时间。
}

  server {
   location / {
   proxy_http_version 1.1;
   #开启对http1.1支持
  proxy_set_header Connection "";
  # 设置Connection为空串,以禁止传递头部到后端
  # http1.0中默认值Connection: close
  proxy_pass http://nginx_test;
}
}

具体参见:

http://linuxgp.blog.51cto.com/1708668/934588