nginx优势,依赖,启动
Nginx优势
1.nginx将网络,磁盘及定时器等异步事件的驱动都做了非常好的封装,基于它开发将可以忽略这些事件处理的细节。
2.Nginx封装了许多平台无关的接口,容器,适用于跨平台开发。
3.模块化设计,使得开发者可以轻易的复用各种已有的模块。
4.基于它开发服务器程序可以轻松的实现程序的动态升级,子进程的监控,管理,配置项的动态修改生效。
5.能够使用特殊的系统调用(对linux做了大量的优化),更高效的完成任务。
特点:
1.更快:单次响应会得到更快的响应;在高峰期,nginx可以比其他web服务器更快的响应请求。
2.高扩展性:nginx完全是由多个不同的功能,不同层次,不同类型且耦合度极低的模块组成。
3.高可靠性:这来自于其核心框架代码的优秀设计,模块设计的简单性。
4.低内存消耗:10000个非活跃的http keep-alive连接在nginx中仅消耗2.5Mb的内存。
5.单机支持10万以上的并发连接。
6.热部署:master管理进程和worker工作进程的分离设计。
7.最free的bsd许可协议:不仅可以使用,还可以修改源代码并发布。
依赖包:
gcc:可以编译C语言程序
gcc-c++:编译工具,编写nginx HTTP模块。
pcre:perl兼容正则表达式
pcre-devel:是使用pcre做二次开发时所需要的开发库,包括头文件。
zlib:对http包的内容做gzip格式压缩
zlib-devel:做二次开发时所需的开发库
openssl:支持在更安全的ssl协议上传输http(MD5,sha1)
openssl-devel
File-max::表示一个进程,可以同时打开的最大句柄数。
Tcp_tw_reuse:1表示充许将time-wait状态的socket重新用于新的Tcp_keepalive_time:当keepalive启动时,tcp发送keepalive消息的频度,默认2小时,若将其设置的小一些,可以更快的清理无效的连接。
Tcp_fin_timeout:当服务器主动关闭连接时,socket保持在fin-wait-2状态的最大时间。
Tcp_max_syn_backlog:表示tcp三次握手建立阶段接收syn请求队列的最大长度,默认为1024,将其设置的大些可以使出现nginx繁忙来不及accept新连接的情况时,linux不至于丢失客户端发起的连接请求。
Ip_local_port-range:在udp和tcp连接中本地(不包括连接的远程)
端口的取值范围。
Net.ipv4.tcp_rmem:定义了tcp接收缓存(用于tcp接受滑动窗口)的最小值,默认值,最大值。
Net.ipv4.tcp_wmem:定义了tcp发送缓存(用于tcp接受滑动窗口)的最小值,默认值,最大值。
Netdev_max_backlog:当网卡接收数据包的速度大于内核处理的速度时,会有一个小队列保存这些数据包,这个参数表示该队列的最大值。
Rmem_default:表示内核套接字接收缓存区的默认大小。
Wmem_default:表示内核套接字发送缓存区的默认大小。
Rmem_max:表示内核套接字接收缓存区的最大大小。
Wmem_max:表示内核套接字发送缓存区的最大大小。
Tcp_syncookies:用于解决tcp的syn攻击
cat ./configure
auto/options:处理configure命令的参数
auto/init:脚本初始化后续将产生的文件路径。
auto/sources:分析nginx的源码结构,构造后续的makefile文件
默认启动:
/usr/local/nginx/sbin/nginx -c /etc/nginx.conf
指定安装目录的启动方式
/usr/local/nginx/sbin/nginx -p /usr/local/nginx
指定全局配置项的启动方式
/usr/local/nginx/sbin/nginx -g “pid /var/nginx/test.pid”
测试配置信息是否有错
/usr/local/nginx/sbin/nginx -t -q (-q可以不把error级别以下的信息输出到屏幕)
显示版本
/usr/local/nginx/sbin/nginx -V
快速停止
/usr/local/nginx/sbin/nginx -s stop (收到信号立即跳出循环)
处理完当前所有请求再停止
/usr/local/nginx/sbin/nginx -s quit (关闭监听端口,停止接受新的链接,处理完请求,退出)
停止冒个worker进程
kill -s SIGWINCH <nginx worker pid>
使运行中的nginx重读配置文件
/usr/local/nginx/sbin/nginx -s reload
日志文件回滚
/usr/local/nginx/sbin/nginx -s reopen
平滑升级nginx
nginx优势,依赖,启动的更多相关文章
- 002.Nginx安装及启动
一 Nginx yum安装 1.1 前置准备 1 [root@nginx01 ~]# systemctl status firewalld.service #检查防火墙 2 [root@nginx01 ...
- Windows 安装nginx并开机启动
Win安装nginx并 开机启动 下载nginx安装包 nginx-1.12.2.zip,解压到D盘. https://pan.baidu.com/s/1InQa527yq35Q68c73RBb-A# ...
- gitlab6 nginx配置和启动脚本
gitlab6 nginx配置和启动脚本 cheungmine 2013-10 最近把gitlab安装到了ubuntu12.04.3的虚拟机上了.参考: https://github.com/gitl ...
- 利用系统函数模拟实现nginx 系统脚本启动的特殊颜色专业效果
利用系统函数模拟实现nginx 系统脚本启动的特殊颜色专业效果/etc/init.d/nginxd {start/stop/restart/reload}利用if语句实现: ============= ...
- Nginx服务器的启动控制
写在前面的话:读书破万卷,编码如有神--------------------------------------------------------------------主要内容包括: nginx服 ...
- nginx环境下启动php-fpm
nginx环境下启动php-fpm 1.首先查看是否安装了php-fpm 这个我试了好多命令都不行比如 rpm -qa php-fpm , rpm -ql php-fpm , which php-fp ...
- CentOS7.3编译安装Nginx设置开机启动
起因 最近想玩nginx了,本来用yum -y install nginx安装也启动好了,但是买了本<Nginx高性能Web服务器详解>,我咋能辜负我的书费呢?于是我就直接ps -ef | ...
- nginx服务器安装与启动
nginx服务器介绍 1.nginx服务器功能 nginx服务器可以扮演:轻量级的web服务器.应用服务器.代理服务器.反向代理服务器.后台服务器.CDN缓存服务器 nginx的基本模块: 内核模块C ...
- centos7 nginx设置开启启动
添加系统服务 在 /usr/lib/systemd/system 目录中添加 nginx.service,根据实际情况进行修改,详细解析可查看下方参考资料中的文章.内容如下 ? [Unit] ...
随机推荐
- H3C SSH配置例子
- css设置Overflow实现隐藏滚动条的同时又可以滚动
.scroll-list ul{ white-space: nowrap; -webkit-overflow-scrolling: touch; overflow-x: auto; overflow- ...
- C++高精度加减乘除模板
其中高精度乘法通过了POJ2389,其他没有测过,不过应该是没有问题的. 其中高精度除法返回一对string,分别表示商和余数. 代码: #include <bits/stdc++.h> ...
- CSS中的“>”是什么意思
#quickSummary p{color:red;} #quickSummary >p+p{color:red;} #quickSummary>p+p+p{color:inherit;} ...
- hdu 1045 Fire Net(dfs)
Fire Net Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Su ...
- codeforces 1230 div2
C 给一个图,并且在边上放上多米诺骨牌,使得每个多米诺骨牌指向的顶点的数字是一致的,并且每种骨牌只能用一种.问最多能够覆盖多少条边. 先生成每一个点指向的数字,然后判断就好了. #include< ...
- Python--day63---出版社增删查改开发流程回顾
1,第一步:对应url 2,第二步:views.py 3,第三步:views.py中的函数中利用ORM去数据库中操纵数据 4,第四步:Django模板语言实现字符串替换 5,第五步:取出publish ...
- 4-4 Selector有一个方法可以获取Selector中的文本内容---extract()
####### 例如: response.xpath('//div[@class ="entry-header"]/h1/text()').extract()
- H3C 不适当的VLAN间路由方式
- git如何移除某文件的版本控制
1:还没有加到版本控制中 (1)还没有git add 在 .gitignore中添加 (2)已经git add 先 git rm -r --cached 文件 在 .gitig ...