nginx大结局

Nginx+Lua环境搭建

参考http://www.imooc.com/article/19597这个手记搭建

Nginx调用lua模块指令

nginx大结局_第1张图片

nginx大结局_第2张图片

灰度发布:先让一部分人体验,防止服务器爆炸

nginx大结局_第3张图片

安装memcaches:

yum install memcache

启动memecache

memcached -p11211 -u//用户 nobody -d//以守护进程的方式启动

想要调用memecache的数据还要加一个模块

好了之后就可以调用require来调用memcache数据

一般在企业中可以getmemcache set数据进去,也可以telnet 127.0.0.1 11211//端口的方式手动添加

例:set 103.215.191.72 0 0 1就设置进去了,给103.215.191.72设置值为1

架构篇

1.配置了相同的servername(域名)配置文件排在前面的优先级高

location匹配优先级:= 进行精确匹配  ^~表示前缀匹配,~\~*表示一个正则匹配,总之精确度越高,匹配优先级越高

Nginx的try_files:顺序检查文件是否存在

location / {

try_file $uri $sui/ /index.php //表示客户的uri有没有,没有就加\寻找,如果还是没有就转到index。php处理

}

nginx中的alias和root的区别

root是加载路径后面,

alias不会按照客户的地址去查,而是去alis定义的路径下查找对应的文件

怎么在多重代理的情况下传递真实的ip  在代理一的时候,定义一个变量计入set x_real_ip = Sremote_addr

其他:

nginx大结局_第4张图片默认60s

性能优化考虑点:

1.当前系统结构瓶颈,观察指标,压力测试

了解业务模式:借口业务类型,系统层次化结构

性能安全

二:ab接口压力测试工具

1.安装:yum install httpd-tools

ab -n//请求总数 2000 -c 并发数2 http.....  -k是否开启长连接

系统与nginx优化:

1.网络,2.系统,3.服务,4.程序,5.数据库,底层服务

文件的句柄:文件索引,可以在系统全局,用户局部修改,进程局部性修改

在系统中有一个修改系统配置的地方:/etc/security/limits.conf

用户:root soft nofile  12345

用户:root hard nofile  12345

全局:* soft nofile  12345

全局      * hard nofile  12345   默认1024

局部在nginx配置文件中加入worker_rlimit_nofile 88888;

cpu亲和:进程不要在处理器中频繁切换,频率,减少性能损耗

在/proc/cpuinfo下记录着cpu的型号,核数等

physical id指多少个物理cpu型号,sort:排序,uniq:去重 wc -l 统计

cat /proc/cpuinfo | grep "physical id"|sort|uniq|wc -l 统计物理cpu数

cat /proc/cpuinfo | grep "physical id"|uniq统计核数,一般用物理cpu*核数  先按top在按1就能查看,

ps -eo pid,args,psr | grep [n]ginx 查看核的使用状态,重0开始

use epoll(nginx核心)事件驱动器

worker_connections   10240 //默认1024  限制worker进程能处理的连接

chaeset utf-8;表示字符集问题

access_log 表示请求日志存放地点当然了也可以用off关闭

sendfile on 表示对静态资源是有效的

nginx大结局_第5张图片

nginx大结局_第6张图片

nginx大结局_第7张图片

nginx大结局_第8张图片

需要建立一些环境测试sql注入

nginx大结局_第9张图片

nginx大结局_第10张图片

现在用的很广的war,防止sql注入:https://github.com/loveshell/ngx_lua_waf这个里面可以查看文档

yum install git 安装git命令,这样就可以git clone https.........//github上的地址默认保存在 ngx_lua_war/目录下

按照官方文档一步步就没问题

在nginx.conf中调用lua

总结

1.对于项目而言要了解需求,静态资源分配,不同目录不同规则,浏览器的缓存设计,时间设计,防盗链,流量的限制(灰度),静态资源压缩,代理的协议,正向代理,反向代理需不需要负载均衡,代理缓存设计,超时,请求头信息的传递,分片请求,........

nginx大结局_第11张图片

设计评估:硬件:cpu,内存,硬盘。考虑并发。。

系统,用户权限,日志目录存放

关联服务,高度可用,keepalive,syslog。。。。

配置注意事项:合理配置,了解原理,关注日志


你可能感兴趣的:(技术,详细文档,工具,教程,问题)