Ngnix调整
1、隐藏版本号,防止针对版本攻击
http {
server_tokens off;
2、增加并发连接
2.1 worker_processes :改为CPU核数一致,因为异步IO进程是单线程
2.2 worker_connections 65535
apache 理论并发 3w
nginx 理论并发 5w
2.3 /etc/security/limits.conf:修改配置文件
* soft nofile 100000
* hard nofile 100000
ulimit -h 查看
ulimit -Hn 100000:实时生效,重起丢失
ulimit -Sn 100000:实时生效,重起丢失
2.4 客户端测试也需要提高打开文件的限制
3. 客户端请求头信息过长,服务请求缓存过小
3.1 client_header_buffer_size 1K;
3.2 large_client_header_buffer 4 4K;4个4K.工作;实验 4 1m
4、页面压缩gzip on;
gzip_min_length 1000;
gzip_comp_level 4;
gzip_types text/plain application/json;
5、缓存(服务器要求客户缓存天数)
服务端对长时间不变化的资源告知客户端缓存
Location ~* \.(jpg|png)$ {
expires 30d;
}
//=========~* 正则匹配,忽略大小写
6、自定义404错误页面
error_page 401 402 403 404 /404.html
Location = /40x.html {
root html
}
300--重定向 400客户端错误 401 密码错误 403 禁止deny/权限不对
414 请求头太常 500--服务器错 502--集群错误
7、内核参数优化 /etc/sysctl.conf
net.ipv4.tcp_syncookies = 0
net.ipv4.tcp_max_syn_backlog=60000
net.ipv4.tcp_max_tw_buckets = 30000
net.ipv4.tcp_fin_timeout = 30
8、服务器连接性能 -o显示计时器 每隔1秒钟执行依次ss命令,查看所有的http连接 mysql连接
watch -n1 ss -s -o state all '\( dport = :80 or sport = :80 \)'
watch -n1 ss -s -o state all '\( dport = :3306 or sport = :3306 \)'
Ngnix调整的更多相关文章
- ubuntu14.04下安装ngnix,mediawiki,nodebb,everything,gitlab
本周折腾了以下几个东西,mediawiki(维基),nodebb(论坛),gitlab(私有git服务器). 本来的目的是搭建一个wiki,选用了mediawiki后,使用apache搭建好了. 搭论 ...
- .NET遇上Docker - 使用Docker Compose组织Ngnix和.NETCore运行
本文工具准备: Docker for Windows Visual Studio 2015 与 Visual Studio Tools for Docker 或 Visual Studio 2017 ...
- Ngnix负载均衡安装及配置
1.ngnix概念 Nginx是一款高性能的http 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器.由俄罗斯的程序设计师Igor Sysoev所开发,官方测试nginx能够支支撑5 ...
- 分布式系统的负载均衡以及ngnix负载均衡的五种策略
一般而言,有以下几种常见的负载均衡策略: 一.轮询. 特点:给每个请求标记一个序号,然后将请求依次派发到服务器节点中,适用于集群中各个节点提供服务能力等同且无状态的场景. 缺点:该策略将节点视为等同, ...
- Taurus.MVC 微服务框架 入门开发教程:项目部署:2、让Kestrel支持绑定多个域名转发,替代Ngnix使用。
系列目录: 本系列分为项目集成.项目部署.架构演进三个方向,后续会根据情况调整文章目录. 本系列第一篇:Taurus.MVC V3.0.3 微服务开源框架发布:让.NET 架构在大并发的演进过程更简单 ...
- .Net Core MVC 网站开发(Ninesky) 2.3、项目架构调整(续)-使用配置文件动态注入
上次实现了依赖注入,但是web项目必须要引用业务逻辑层和数据存储层的实现,项目解耦并不完全:另一方面,要同时注入业务逻辑层和数据访问层,注入的服务直接写在Startup中显得非常臃肿.理想的方式是,w ...
- .Net Core MVC 网站开发(Ninesky) 2.3、项目架构调整-控制反转和依赖注入的使用
再次调整项目架构是因为和群友dezhou的一次聊天,我原来的想法是项目尽量做简单点别搞太复杂了,仅使用了DbContext的注入,其他的也没有写接口耦合度很高.和dezhou聊过之后我仔细考虑了一下, ...
- C#中如何调整图像大小
在本篇文章中,我将介绍如何在C#中来调整你想要的图像大小.要实现这一目标,我们可以采取以下几个步骤: 1.首先要获取你想要调整大小的图像: string path = Server.MapPath(& ...
- BPM配置故事之案例9-根据表单数据调整审批线路2
老李:好久不见啊,小明. 小明:-- 老李:不少部门有物资着急使用,现在的审批流程太慢了,申请时增加一个是否加急的选项吧.如果选加急,金额1000以下的直接到我这里,我审批完就通过,超过1000的直接 ...
随机推荐
- c++中sort函数调用报错Expression : invalid operator <的内部原理
当我们调用sort函数进行排序时,中的比较函数如果写成如下 bool cmp(const int &a, const int &b) { if(a!=b) return a<b; ...
- mac登录窗口出现白框问题解决
昨天早上起床打开电脑,发现登录窗口的界面出现了大半边的白框,如下图,可是昨晚上关机前还是好好的,而且新电脑不至于啥也没干屏幕就出问题. 输入密码进入桌面,OK,不是屏幕的问题,那为什么会出现白框呢? ...
- 511,display:inline-block什么时候不会显示间隙?
(百科: 在CSS布局中,如果我们想要将一些元素在同一行显示,其中的一种方法就是把要同行显示的元素设置display属性为inline-block,但是你会发现这些同行显示的inline-block元 ...
- python函数编程闯关总结
文件处理相关 1,编码问题 (1)请问python2与python3中的默认编码是什么? python .x默认的字符编码是ASCII,默认的文件编码也是ASCII python .x默认的字符编码是 ...
- jdk 9 10 11 12 13 新特性
jdk 9 新特性 1.集合加强 jdk9 为所有集合(List/Set/Map)都增加了 of 和 copyOf 方法,用来创建不可变集合,即一旦创建就无法再执行添加.删除.替换.排序等操作,否则将 ...
- DAG 计数
以下方法都是按照这个套路: 考虑一个不一定连通的 DAG ,你枚举一些零度点(拓扑序第一层)集合 \(S\),这些点之间不能连边,这些点跟剩下点(点集为 \(T\),\(|S| \cup |T| = ...
- vue项目打包后运行报错400如何解决
昨天一个Vue项目打包后,今天测试,发现无论localhost还是服务器上都运行不了,报错如下: Failed to load resource: the server responded with ...
- P1567
最大子数组和问题,dp或者分治.. #include <bits/stdc++.h> #define rep(i, a, b) for(int i = a; i <= b; i++) ...
- Fedora以root用户自动登陆
目录 Fedora以root用户自动登陆 参考 配置自动登陆 Fedora以root用户自动登陆 Fedora Workstation Version: 31
- input输入框type设置为number,maxlength无效
一个小细节,以前很少注意,直到最近做的一个项目,当我把一个输入数字的input框的类型设置为number时,input框还是可以无限输入,设置maxlengh=10就不起作用了.然后我就去百度了一下, ...