Blog 转型遇到的点点滴滴,走过的坑,以及优化策略

最近使用了Java版的博客,架构简单,

cdn + nginx +tomcat 基本也就一比一,昨天也测了个性能,也可供大家参考参考;

 

 

以上是我们的测试结果,个人感觉还行,毕竟是1G 内存,1个内核。上面还跑了MYSQL 5.5 + PHP 5的版本。

个人感觉还不错吧,下面晒晒配置;

Nginx:

server
    {
        listen 80;
        #listen [::]:80 default_server ipv6only=on;
        server_name s.duzhi.me www.duzhi.me;
        #error_page   404   /404.html;
        proxy_ignore_client_abort on;
if ( $host != 'www.duzhi.me' ){ 
        rewrite ^/(.*)$ http://www.duzhi.me/$1 permanent; 
}
        location ~.*\.(js|css|gif|jpg|jpeg|png|bmp|swf|woff)$
{
expires       15d;
root /data_disk/data/html/jduzhi/ROOT;
}


        location / {
                proxy_pass http://java.duzhi.me:8080;
        }
        access_log  /home/wwwlogs/access.log;
    }

配置详解:

proxy_ignore_client_abort 解决Nginx 499错误的情况,意思是服务端不要主动关闭客户端链接; 

location ~.* 等等,这个大家应该很常见,主要降低Tomcat 压力,将静态资源直接通过Nginx 请求转发出去,不需要走tomcat 绕行。

Tomcat

 

maxThreads 客户请求最大线程数
  minSpareThreads Tomcat初始化时创建的 socket 线程数
  maxSpareThreads Tomcat连接器的最大空闲 socket 线程数
  enableLookups 若设为true, 则支持域名解析,可把 ip 地址解析为主机名
  redirectPort 在需要基于安全通道的场合,把客户请求转发到基于SSL 的 redirectPort 端口
  acceptAccount 监听端口队列最大数,满了之后客户请求会被拒绝(不能小于maxSpareThreads )
  connectionTimeout 连接超时
  minProcessors 服务器创建时的最小处理线程数
  maxProcessors 服务器同时最大处理线程数
  URIEncoding URL统一编码

 

 c ompression 打开压缩功能
  compressionMinSize 启用压缩的输出内容大小,这里面默认为2KB
  compressableMimeType 压缩类型
  connectionTimeout 定义建立客户连接超时的时间. 如果为 -1, 表示不限制建立客户连接的时间

 

catalina.sh

CATALINA_OPTS="-server -Xms128m -Xmx256m -XX:PermSize=64m -XX:MaxPermSize=196m -Djava.security.egd=file:/dev/./urandom"

参考文章

除特别注明外,本站所有文章均为duzhi原创,转载请注明出处来自https://www.duzhi.me/article/46.html

联系我们

******

在线咨询:点击这里给我发消息

邮件:ashang.peng#aliyun.com

QR code