PinyZhang Blog

Nginx基础入门

历史背景

互联网的快速普及全球化和物联网的快速发展导致互联网中的人与设备快速增长,数据的快速爆炸对硬件的性能提出更高的要求,由于Apache的架构设计使其无力应对现状。

主要优点

  1. 高并发高性能,单个进程可处理上万请求
  2. 可扩展性好,模块设计稳定,存在大量的第三方模块可供选择
  3. 高可靠性,可持续不间断的运行数年
  4. 热部署,可不停止服务升级Nginx

安装Nginx

源码安装

wget https://nginx.org/download/
cd nginx
./configure
make && make install

# 默认安装路径
/usr/local/nginx/sbin/nginx

Yum安装

# 以CentOS为例
yum install epel-release
yum clean all
yum install nginx

# 安装路径
/usr/sbin/nginx

使用场景

usage scenario

静态资源服务

通过本地文件系统提供服务

http {
    server {
        listen 80;
        server_name *.jdcloud.com;
        
        location / {
            root /usr/share/nginx/html
        }
    }
}

反向代理服务

强大性能,缓存,负载均衡

http {
    upstream app_server {
        server 192.168.1.100:8081 weight=1;
        server 192.168.1.100:8082 weight=2;
    }

    server {
        listen 80;
        server_name _;
        
        location / {
            proxy_pass http://app_server;
        }
    }
}

API服务

OpenResty暂不做介绍