一、绑定cpu线程,减少cpu切换开销,避免不同的CPU缓存失效
#指定四个数cpu
worker_processes 4;
#比如8核服务器,绑定0、1、4、7号cpu
worker_cpu_affinity 00000001 00000010 00001000 10000000;
[b][*]二、屏蔽无效爬虫
[/b]
一些情况下,做seo运营的网站,我们是避免死链,要求内容也多,基本上百度,google,360蜘蛛不拒绝,百度现在是机器+人工+人工,要求较高。
但是一些蜘蛛对网站会域名对运营一点作用都没有,都需要屏蔽,会严重影响系统性能,占用应用资源,特别是一些主页开启资源特别多的网站,直接影响到网站或者一些api使用。
所以要屏蔽一些无用的蜘蛛。
if ($http_user_agent ~* "DotBot|Amazonbot|MJ12bot|ApacheBench|WebBench|HttpClient|Curl|^$|AhrefsBot|BLEXBot|^-$|WordPress|SemrushBot|MegaIndex.ru) {
return 403;
}
三、开启压缩
#nginx支持gzip压缩
http
{
...
gzip on;
gzip_min_length 1k;
gzip_buffers 4 50k;
gzip_http_version 1.0;
gzip_comp_level 2;
#需要格式化的类型
gzip_types text/plain application/x-javascript text/css application/xml;
gzip_vary on;
#开启brotli压缩,比gzip压缩效率高,要额外安装插件,返回Content-Encoding格式是:br,也能防止一些比较lower的爬虫爬数据,这里不写
四、设置页面缓存
有一些url打开请求比较慢或者一些静态数据,而且不需要一直请求后端应用,这时候ngnix可以加入缓存,(服务器硬盘最好采取ssd)
http
{
proxy_cache_path /usr/local/nginx/cache1 levels=1:2:2 inactive=1d max_size=100g keys_zone=one:500m loader_threshold=300 loader_files=2000;
proxy_cache_path /usr/local/nginx/cache2 levels=1:2:2 inactive=30d max_size=100g keys_zone=two:500m loader_threshold=300 loader_files=2000;
server {
proxy_cache one;
#慢请求
location /slow_request {
# 指定keys_zone为one的
proxy_cache one;
# 仅对响应200的有效,保存5min
proxy_cache_valid 200 5m;
proxy_cache_key $host$uri$is_args$args;
proxy_pass http://127.0.0.1:8080;
}
location /static_data {
# 指定keys_zone为one的
proxy_cache two;
# 仅对响应200的有效,保存5min
proxy_cache_valid 200 5m;
proxy_cache_key $host$uri$is_args$args;
proxy_pass http://127.0.0.1:8080;
}
}
五、开启零copy、直接内存
nginx支持sendfile零copy,省去传输到应用缓冲的开销,也支持直接内存
location /video/ {
sendfile on;
#开启异步
#aio on;
#开启直接内存,不能跟sendfile一起用;这个为什么,就要去研究一下io传输技术,说起来有点啰嗦,先不说了
#directio 8m;
}
分享到:
相关推荐
nginx优化 突破十万并发。nginx的配置详解
关于 nginx 的一些优化(突破十万并发)
nginx优化
nginx优化.docx
nginx优化-关于nginx 的一些优化(突破十万并发)-内核参数的优化
nginx的详细优化参数,要多多测试下nginx的详细优化参数,要多多测试下
nginx优化之request_time 和upstream_response_time差别笔者在根据nginx的accesslog中$request_time
个人总结的Nginx优化笔记
56-TomcatNginx优化1
Nginx优化详解(超详细) - 龙福 - 博客园.mht
nginx优化 突破万并发章转载于:http://9388751.blog.51cto.com/9378751/1676821nginx优化 突破万并发、般来说
nginx优化Memblaze高速IO应用
6.3: Nginx代理服务器 、 Nginx优化 、 总结和答疑.docx
Nginx优化详解(超详细) - 龙福 - 博客园.zip
本文作者主要分享在Nginx性能方面的实践经验,希望能给大家带来一些系统化思考,帮助大家更有效地去做Nginx。 优化方法论 我重点分享如下两个问题: 保持并发连接数,怎么样做到内存有效使用。 在高并发的...
nginx与fastcgi优化相关配置,搭建高性能服务器。
1:首先下载libunwind-1.1 ...然后安装 # tar zxvf libunwind-1.1.tar.gz # cd libunwind-1.1 # CFLAGS=-fPIC ./configure # make CFLAGS=-fPIC # make CFLAGS=-fPIC install ...# echo "/usr/local/lib" > /etc...优化完成
nginx指令中的优化(配置文件) 代码如下:worker_processes 8; nginx进程数,建议按照cpu数目来指定,一般为它的倍数。 代码如下:worker_cpu_affinity 00000001 00000010 00000100 00001000 00010000 00100000 ...
我已经谈过一些关于Nginx的常见问题,其中有一些是关于如何优化Nginx,很多Nginx新用户是从Apache迁移过来的,因些他们过去常常调整配置和执行魔术操作来确保服务器高效运行。 我有一些坏消息要告诉你,你不能像...
介绍Nginx是俄罗斯编写的分轻量级的是俄罗斯编写的分轻量级的HTTPHTTP服务器服务器,Nginx,是个性能的HTTP和反向代理服务器,同时也是个和反向代理