nginx闲谈

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录

  • 介绍
    • 特点
      • 高并发
      • 轻量级
      • 模块化设计
    • 应用场景
      • web服务器
      • 反向代理
          • 正向代理(类似机场)
        • 配置demo
      • 负载均衡
      • 缓存
      • 处理https与ssl/tls
      • api网关


介绍

nginx高性能(同比tomcat性能高20%),轻量的weib服务器和反向代理服务器,能解决大量并发连接(C10K问题),高并发,高可靠,低内存消耗,支持多功能模块(如前端静态资源,缓存,负载均衡)等

特点

高并发

使用事件驱动架构(异步非阻塞),异步-事件发生后进行其他逻辑,不等待, 非阻塞-通过并发实现不阻塞主流程

轻量级

内存占用少

模块化设计

既能当缓存,能反向代理(请求进来通过nginx代理到某一台机器),能负载均衡(如权重,轮询,最短响应等指标),能提供静态资源映射

应用场景

web服务器

  1. 映射前端资源,通过路由直接访问
  2. php通过nginx对外提供服务
  3. 配置域名与对应证书
  4. 配置虚拟主机(如配置baidu.com,同时将本地host写入baidu.com 本机IP),能实现域名访问服务

反向代理

  1. 将指定路由代理到一组服务器,实现高可用,负载均衡等
  2. 避免多台服务器对外暴露,减少维护成本
  3. 隐藏真的部署服务的机器,提高安全
  4. 代理服务器进行外部直接通信并进行加解密
正向代理(类似机场)
  1. 通过代理服务器访问被限制访问的资源
  2. 隐藏IP
  3. 缓存
配置demo
server {
listen 80;
server_name domain.com;
location / {
proxy_pass http://192.168.1.1:800i0;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}

负载均衡

  1. 通过反向代理 + 服务器组实现(upstream + proxypass)
  2. 多种策略,如轮询(roudbin,),权重(weight), ip hash
  3. 动态扩展,支持临时增加更多服务器

缓存

缓存数据,如404 or 200的页面

处理https与ssl/tls

通过nginx服务器进行ssl/tls加解密

api网关

作为网关,能统一管理服务入口,流量控制,黑白名单,安全认证等

你可能感兴趣的:(nginx,运维)