针对nginx的一系列优化方法及nginx服务器状态的查看
优化 nginx 的并发:
1.修改 nginx 配置文件
[root@proxy nginx]# vim conf/nginx.conf worker_processes 1; #线程数,最大匹配 CPU 核心数,通常设 置为 auto worker_rlimit_nofile 16384; #设置文件描述符,默认 1024 events { use epoll; #使用 epoll 模式 worker_connections 1024;} #每线程并发量,最大设置 65535,匹配 最大端口号
2.修改 linux 内核参数
[root@proxy ~]# ulimit -a #查看所有属性值 [root@proxy ~]# ulimit -Hn 100000 #设置硬限制,非 root 用户允许修改的软 限制上限 [root@proxy ~]# ulimit -Sn 100000 #设置软限制,非 root 用户可以自行修改
优化 nginx 数据包头缓存
[root@proxy nginx]# vim conf/nginx.conf http{ client_header_buffer_size 1k; #默认请求包头信息的缓存 large_client_header_buffers 4 4k; #大请求包头信息的缓存个数,每个 缓存的容量 ... }
定义静态页面的缓存时间
[root@proxy nginx]# vim conf/nginx.conf server { ... location ~* \.(jpg|jpeg|gif|png|ico|xml)$ { #定义需要缓存的文件格式 expires 30d; #定义缓存天数 } ...}
对网页进行压缩
[root@proxy nginx]# vim conf/nginx.conf http{ ... gzip on; #开启压缩 gzip_min_length 1000; #小文件不压缩,单位 kb gzip_comp_level 4; #压缩比率,数字越大,压缩效果越好,处理 器压力越大 gzip_types text/plain text/css; #需要压缩的文件类型,扩展名对应类型可通 过 conf/mime.types 查询 ...}
自定义报错页面
[root@proxy nginx]# vim conf/nginx.conf http{ ... error_page 403 404 414 /404.html; #将模板注释去除即可 ...}
nginx 动静分离
将静态页面与动态页面、图片资源、声音视频资源放在不同的服务器上
常见的 http 状态码:
200 一切正常
301 永久重定向
302 临时重定向
304 缓存重定向
400 请求语法错误
401 用户名或密码错误
403 禁止访问,IP 被拒绝
404 文件不存在
414 请求 URL 头部过长
500 服务器内部错误
502 网关或代理服务器返回了非法的路由
查看服务器状态
--with-http_stub_status_module 模块
1.安装模块
2.
[root@proxy nginx]# vim conf/nginx.conf location /status{ stub_status on; #开启模块 allow 192.168.4.100; #白名单 deny all;}
3.
[root@client ~]# curl 192.168.4.5/status Active connections: 1 server accepts handled requests 1 1 1 Reading: 0 Writing: 1 Waiting: 0
参数含义
Active connections:当前活动的连接数量。
Accepts:已经接受客户端的连接总数量。
Handled:已经处理客户端的连接总数量(一般与 accepts 一致,除非服务器限制 了连接数量)。
Requests:客户端发送的请求数量。
Reading:当前服务器正在读取客户端请求头的数量。
Writing:当前服务器正在写响应信息的数量。
Waiting:当前多少客户端在等待服务器的响应。
PHP 的 Session 信息
Session:存储在服务器端,保存用户名、密码等信息。
Cookies:由服务端下发给客户端,内容包括:SessionID、帐号名、过期时间、路径、域。
默认存放路径: /var/lib/php/session/
修改配置文件,将所有后端服务器的 Session 统一放在数据库服务器上
[root@web1 ~]# vim /etc/php-fpm.d/www.conf php_value[session.save_handler] = memcache php_value[session.save_path] = "tcp://192.168.2.5:11211"

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
python xlrd 读取excel
文章链接:https://mp.weixin.qq.com/s/fojkVO-AB2cCu7FtDtPBjw 之前的文章介绍过关于写入excel表格的方法,近期自己在做一个网站,涉及到读取excel,然后把数据存到数据库,故把操作excel的过程记录下的。 pip3 install xlrd直接pip3安装。 为了演示方便,这里的excel文件直接和python文件放在一个目录下的,如果是项目中,需要注意excel的文件路径。 # 操作excel excel = xlrd.open_workbook("test.xls") excel.sheet_names() # 获取excel里的工作表sheet名称数组 sheet = excel.sheet_by_index(0) #根据下标获取对应的sheet表 sheet.row_values(0) #获取第一行的数据 sheet.col_values(0) #获取第一列的数据 sheet.nrows #获取总共的行数 sheet.ncols #获取总共的列数 假设我们需要第二行至最后一行的数据,就可以直接遍历获取了 for i in ra...
- 下一篇
spring boot 之自动装配
前言 在最初接触spring 的时候,还是使用xml进行装配,我记得很清楚,当时分别配置了spring-dao.xml , spring-service.xml , spring-controller.xml。然后把所有需要用到的扫包,注入bean,以及配置,全都一股脑的塞进xml中,虽然出发点很好,不用在java代码中硬编码了,但是xml的可读性并不是很好,那阵子,真是痛苦的要命。 正文 后来逐渐的接触到了spring boot,发现这个东西开发起来简单的要命,几乎自己不需要过多的考虑spring 与别的框架整合的问题,所有的一切spring boot已经帮我们做好了,只需要在application.properties 配置一下就完事。但是spring boot 因为大部分的东西,已经不需要我们在着手了,所以对我们而言,“易学难精”。所以我决定好好把spring boot的原理搞清楚,今天就来说一说自动装配。这里提前说一下,Spring boot的注入一共有四种方式: 1.通过 spring 模式注解 装配2.通过@Enable* 注解进行装配 3.通过条件注解装配4.通过工厂类去...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- 设置Eclipse缩进为4个空格,增强代码规范
- CentOS7,CentOS8安装Elasticsearch6.8.6
- MySQL8.0.19开启GTID主从同步CentOS8
- CentOS8编译安装MySQL8.0.19
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- CentOS6,CentOS7官方镜像安装Oracle11G
- CentOS7安装Docker,走上虚拟化容器引擎之路
- SpringBoot2全家桶,快速入门学习开发网站教程
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- Linux系统CentOS6、CentOS7手动修改IP地址