apache的ab命令
测试服务的压力
ab -n 40 -c 20 http://localhost/
一个ip 每秒发送多少请求
规定ip地址 每秒的请求数是多少
和server 同级
limit_req_zone $binary_remote_addr zone=req_zone:10m rate=1r/s;
limit_conn_zone $binary_remote_addr zone=conn_zone:10m;
// s是second h是小时 m是分钟
location / {
root /usr/share/nginx/html;
index index.html index.htm;
limit_req zone=req_zone burst=3 nodelay;
limit_conn conn_zone 1;// 限制频次 限制链接数
}
//这样就限制了ip下 每秒访问的次数
// 突然的请求数burst=3 每秒处理一个 发过来4个 一个先处理 另三个加入队列中推迟处理
其他的丢弃掉 返回503失败 nodelay; 不延迟 直接抛弃
否则不是合法的客户端
// zone=req_zone:10m 内存区域是10m
访问控制
// 静态资源web服务器返回客户端
// 动态资源 容器链数据库
// CDN 分发的内容 和总服务器有差异
// 热门的放在本网内的资源
找不到回源到源服务器
sendfile
不经过用户内核 自动开启
http {
sendfile on;// 更快一些
tcp_nodelay; //立马放松
tcp_nopush; // 收集一些之后 统一发 //二选一使用
}
// gzip 压缩文件 压缩比例越多 文件体积越小
server {
location ~ .*\.(jpg|png|gif) {
gzip off;
root /usr/share/nginx/html;
}
// 图片不需要压缩 不压缩了
location ~ .*\.(html|js|css) {
gzip on;
gzip_min_length 1k;
// 大于1k才开始压缩
gzip_http_version 1.1;
// http 版本是1.1版本才进行压缩
gzip_comp_level 9;
// 级别越高 压缩的越狠
gzip_types text/css text/javascript;
root /usr/share/nginx/html;
}
location ~ ^/download {
gzip_static on;
tcp_nopush on;
root /usr/share/nginx/html;
}
// 静态gzip_static
这个没有压缩
压缩解压的操作
压缩消耗cup 在服务端压缩好
进入download目录下 先对gzip.txt进行压缩
gzip gzip.txt
源文件就没有了
gzip_static on 的作用是nginx 找的时候 先找gzip.zip文件
直接发给客户端
}
新建 根目录 gzip.html 170k
根目录 gzip.jpg
download 下面 gzip.txt