Nginx 简单介绍及实例

Nginx

  • 一、nginx 简介
        • 1、nginx功能
        • 2、nginx 配置文件
  • 二、Nginx实例
        • 反向代理例子
        • 负载均衡例子
        • 动静分离例子
  • 三、Nginx 高可用 集群

一、nginx 简介

在连接高并发的情况下,Nginx是Apache服务不错的替代品:Nginx在美国是做虚拟主机生意的老板们经常选择的软件平台之一。能够支持高达 50,000 个并发连接数的响应,感谢Nginx为我们选择了 epoll and kqueue作为开发模型。

1、nginx功能

  • 正向代理:客户端进行配置代理服务器,然后通过代理服务器访问到想访问的服务器
  • 反向代理:客户端进行访问,会通过一个代理的服务器访问到服务器,但看不到真实服务器信息
  • 负载均衡:进行多服务器或多ip进行负载均衡,有ip_hash、轮循等方式
  • 动静分离:nginx 加载静态文件

2、nginx 配置文件

三部分

Nginx 配置文件

...              #全局块

events {         #events块
   ...
}

http      #http块
{
    ...   #http全局块
    server        #server块
    { 
        ...       #server全局块
        location [PATTERN]   #location块
        {
            ...
        }
        location [PATTERN] 
        {
            ...
        }
    }
    server
    {
      ...
    }
    ...     #http全局块
}

二、Nginx实例

反向代理例子

通过localhost:9001 访问其他两个服务器

server{
	listen 9001;
	server_name localhost
	location ~ /edu/ {
		proxy_pass http://localhost:8080;  #请求转向 定义的服务器列表
	}

	location ~ /edu2/ {
		proxy_pass http://localhost:8082;  #请求转向 定义的服务器列表
	}

}

负载均衡例子

通过localhost:9001 负载均衡访问两个服务器

upstream myserver {
	server 192.168.1.1:8080;
	server 192.168.1.2:8081 backup;  #热备
}

server{
	listen 9001;
	server_name localhost
	location ~ /edu/ {
		proxy_pass http://myserver;
	}

	location ~ /edu2/ {
		proxy_pass http://localhost:8082;
	}

}

方式一 轮循

按顺序

方式二 weight 权重
权重高的几率大

upstream myserver {
	server 192.168.1.1:8080 weight=5;
	server 192.168.1.2:8081 weight=10;
}

方式三 ip hash
ip_hash 访客固定一个ip,可解决session共享问题

upstream myserver {
    ip_hash;
	server 192.168.1.1:8080;
	server 192.168.1.2:8081;
}

方式三 fair
根据服务器响应时间来分配请求

upstream myserver {
    fair;
	server 192.168.1.1:8080;
	server 192.168.1.2:8081;
}

动静分离例子

location /www/ {
	root /data/;
	index index.html index.htm;
}

location /image/ {
	root /data/;
	autoindex on; #开启目录列表访问,合适下载服务器,默认关闭。
}

三、Nginx 高可用 集群

两台服务器 + 两个Nginx + 两个keepalived

安装 keepalived

yum install keepalived -y

cd /etc/

vim keepalived.conf

你可能感兴趣的:(Java,基础,1024程序员节)