进阶阶段回顾:
Nginx的缓存服务
缓存类型模型:
Nginx作为代理缓存的配置语法
proxy_cache
缓存的路径
systax: proxy_cache_path [缓存存放的目录] levels=[缓存存放的层级, 一般设置为1:2] keys_zone=[缓存的名称, 给开关配置的调用]:[开辟的空间大小(1m可以存放8000个key-value), 如: 10m] max_size=[最大允许缓存, 如:10g] inactive=[不活跃的缓存多长时间后被清除, 如:60m(60分钟后)] use_temp_path=[是否存储临时文件on|off, 一般设置为off(关闭)];
default: 无配置
context: http域
缓存的开关
systax: proxy_cache zone | off;
default: proxy_cache off;
context: http域/server域/location域
缓存过期的周期
systax: proxy_cache_valid [返回的状态码] [时间周期];
default: 无配置
context: http域/server域/location域
缓存的维度
systax: proxy_cache_key string;
default: proxy_cache_key $schema$http_host$request_uri;
context: http域/server域/location域
进入134服务器配置.conf文件:
测试的结果表明缓存起了作用, 如果不设置缓存, 默认的访问是轮询, 而设置缓存之后, 访问结果一直是同一个页面.
设置部分页面不缓存
systax: proxy_no_cache [指定的不缓存的内容, 如某些变量: $cookie_nocache];
default: 无配置
context: http域/server域/location域
进入配置文件:
大文件分片请求
systax: slice [分片的大小];
default: slice 0;
context: http域/server域/location域
优势: 每个子请求收到的数据都会形成一个文件. 如果一个请求断了, 其他请求不会收到影响, 不需要重头再开始请求.
缺点: 当文件很大或者slice设置的值很小的时候, 会导致文件描述符耗尽的情况发生, 占用资源.
Nginx的动静分离
模型:
首先, 需要配置一台Tomcat服务器(直接解压Tomcat的tar包即可完成安装)和一台192.168.19.135的Nginx服务器.
Tomcat不需要其他的配置, 默认使用8080端口, 进入bin目录, 启动: sh catalina.sh start
进入nginx的配置文件:
测试文件test_mysite.html的路径: /opt/code 内容:
图片nginx.jpg路径: /opt/code/static_resource/img
结果: