跳转至

Nginx 动静分离性能提升原理

一、什么是动静分离

  • 静态资源(图片、CSS、JS):Nginx 直接返回。
  • 动态请求(API):转发给后端应用。

二、为什么提升

1. 静态资源快

Nginx 直接读文件返回,不走 Java 应用。 - 内存缓存。 - sendfile 零拷贝。 - 异步 IO。

2. 应用只处理动态

后端应用(Tomcat)不用管静态资源,专注业务。

3. 缓存

静态资源放 CDN/Nginx 缓存,用户直接拿。

三、配置

location /static/ {
    root /data/static;
    expires 30d;
}

location /api/ {
    proxy_pass http://backend;
}

四、性能对比

都走 Tomcat 动静分离
静态资源 Nginx 快
动态 应用快
并发

五、CDN

静态资源放 CDN,用户就近访问。

一句话

Nginx 比 Java 快,静态资源给 Nginx,应用只干动态。