ssl加速功能 安装ssl证书步骤

Nginx 因为它的稳定性、丰富的模块库、灵活的配置和较低的资源消耗而闻名。目前应该是几乎所有项目建设必备 。今天通过这篇攻略让你快速通关 Nginx 。

ssl加速功能 安装ssl证书步骤

文章插图
ssl加速功能 安装ssl证书步骤

文章插图
ssl加速功能 安装ssl证书步骤

文章插图
ssl加速功能 安装ssl证书步骤

文章插图
ssl加速功能 安装ssl证书步骤

文章插图
ssl加速功能 安装ssl证书步骤

文章插图
ssl加速功能 安装ssl证书步骤

文章插图
ssl加速功能 安装ssl证书步骤

文章插图
ssl加速功能 安装ssl证书步骤

文章插图
ssl加速功能 安装ssl证书步骤

文章插图
ssl加速功能 安装ssl证书步骤

文章插图
ssl加速功能 安装ssl证书步骤

文章插图
ssl加速功能 安装ssl证书步骤

文章插图
ssl加速功能 安装ssl证书步骤

文章插图
ssl加速功能 安装ssl证书步骤

文章插图
ssl加速功能 安装ssl证书步骤

文章插图
ssl加速功能 安装ssl证书步骤

文章插图
ssl加速功能 安装ssl证书步骤

文章插图
Nginx 面试题
①Nginx 功能,你们项目中用到的 Nginx?
  • 反向代理服务器
  • 实现负载均衡
  • 做静态资源服务器
  • 作为 HTTP Server
②Nginx 常用命令有哪些?
启动nginx./sbin/nginx停止nginx./sbin/nginx-sstop./sbin/nginx-squit重载配置./sbin/nginx-sreload(平滑重启)servicenginxreload重载指定配置文件./sbin/nginx-c/usr/local/nginx/conf/nginx.conf查看nginx版本./sbin/nginx-v检查配置文件是否正确./sbin/nginx-t显示帮助信息./sbin/nginx-h③Nginx 常用配置?
worker_processes 4; #工作进程数work_connections 65535; #每个进程的并发能力error_log
/data/nginx/logs/error.log; #错误日志
④Nginx 是如何实现高并发的?
Nginx 采用的是多进程(单线程)&多路 IO 复用模型,异步,非阻塞 。
一个主进程 Master,多个工作进程 Worker,每个工作进程可以处理多个请求,Master 进程主要负责收集、分发请求 。
每当一个请求过来时,Master 就拉起一个 Worker 进程负责处理这个请求 。同时 Master 进程也负责监控 Woker 的状态,保证高可靠性 。
【ssl加速功能 安装ssl证书步骤】在 Nginx 中的 Work 进程中,为了应对高并发场景,采取了 Reactor 模型(也就是 I/O 多路复用,NIO) 。
I/O 多路复用模型:在 I/O 多路复用模型中,最重要的系统调用函数就是 select(其他的还有 epoll 等) 。
该方法能够同时监控多个文件描述符的可读可写情况(每一个网络连接其实都对应一个文件描述符),当其中的某些文件描述符可读或者可写时,select 方法就会返回可读以及可写的文件描述符个数 。
Nginx Work 进程使用 I/O 多路复用模块同时监听多个 FD(文件描述符),当 Accept、Read、Write 和 Close 事件产生时,操作系统就会回调 FD 绑定的事件处理器 。
这时候 Work 进程再去处理相应事件,而不是阻塞在某个请求连接上等待 。
这样就可以实现一个进程同时处理多个连接 。每一个 Worker 进程通过 I/O 多路复用处理多个连接请求 。
为了减少进程切换(需要系统调用)的性能损耗,一般设置 Worker 进程数量和 CPU 数量一致 。
⑤Nginx 和 Apache 的区别?
轻量级,同样起 Web 服务,比 Apache 占用更少的内存及资源抗并发,Nginx 处理请求是异步非阻塞的,而 Apache 则是阻塞型的 。
在高并发下 Nginx 能保持低资源低消耗高性能高度模块化的设计,编写模块相对简单,最核心的区别在于 Apache 是同步多进程模型,一个连接对应一个进程;Nginx是异步的,多个连接(万级别)可以对应一个进程 。
⑥Nginx 的 Upstream 支持的负载均衡方式?
  • 轮询(默认)
  • weight:指定权重
  • ip_hash:每个请求按访问 ip 的 hash 结果分配,这样每个访客固定访问一个后端服务器
  • 第三方:fair、url_hash
⑦Nginx 常见的优化配置有哪些?
  • 调整 worker_processes:指 Nginx 要生成的 Worker 数量,最佳实践是每个 CPU 运行 1 个工作进程 。
  • 最大化 worker_connections 。
  • 启用 Gzip 压缩:压缩文件大小,减少了客户端 HTTP 的传输带宽,因此提高了页面加载速度 。
  • 为静态文件启用缓存 。
  • 禁用 access_logs:访问日志记录,它记录每个 Nginx 请求,因此消耗了大量 CPU 资源,从而降低了 Nginx 性能 。

    推荐阅读