nginx的安装与配置

  1、Nginx ("engine x") 是一个高性能的HTTP反向代理服务器,也是一个IMAP/POP3/SMTP服务器。Nginx是由Igor Sysoev为俄罗斯访问量第二的Rambler.ru站点开发的,第一个公开版本0.1.0发布于2004年10月4日。其将源代码以类BSD许可证的形式发布,因它的稳定性、丰富的功能集、示例配置文件和低系统资源的消耗而闻名。2011年6月1日,nginx 1.0.4发布。

  2、Nginx是一款轻量级Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,并在一个BSD-like 协议下发行。由俄罗斯的程序设计师Igor Sysoev所开发,供俄国大型的入口网站及搜索引擎Rambler(俄文:Рамблер)使用。其特点是占有内存少,并发能力强,事实上nginx的并发能力确实在同类型的网页服务器中表现较好,中国大陆使用nginx网站用户有:百度、京东新浪网易腾讯淘宝等。

  总的来说,负载均衡实现的方式分为软件实现和硬件实现两种,硬件实现运行的效率非常高,但是对应的成本也非常高。软件实现运行效率不如硬件,但是成本相对来说低得多。而使用Nginx服务器实现负载均衡,那么就是通过软件的方式来实现负载均衡,并且Nginx本身支持高并发等。故而使用Nginx服务器实现负载均衡,能大大节约企业的成本,并且由于Nginx是服务器软件,其执行效率也是非常高。本篇的目的也就是帮助大家使用Nginx实现负载均衡。

  3、nginx在负载均衡上面效果明显,在集群的部署上面使用非常明确,对于效果图如下:

  

  4、nginx的安装(Linux centos7)

    1)下载tar包放在/usr/local下面下载地址:http://nginx.org/en/download.html

    2)安装相关依赖和库文件  

# yum -y install gcc gcc-c++ autoconf automake   //gcc、gcc-c++的库文件
# yum -y install pcre pcre-devel                 //安装Nginx依赖包
# yum -y install zlib zlib-devel

  5、解压nginx.tar.gz包

# tar -zxvf /usr/local/nginx-1.13.0.tar.gz //解压tar包

  6、在解压包中运行./configure并安装

# cd /usr/local/nginx-1.13.0/
# ./configure 
# make # make install //安装

  7、启动nginx,停止用ps -ef|grep nginx 自己kill线程

# /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf

  8、因为具体的配置在nginx.conf中,不建议直接在nginx.conf中修改,可以做备份处理  

# cp nginx.conf nginx.conf_bak

  9、nginx的配置 vi nginx.conf 对比一下代码修改

#设置低权限用户,为了安全而设置的
user nobody;

#工作衍生进程数
worker_processes 4;

#设置错误文件存放路径
#error_log logs/error.log;
#error_log logs/error.log notice;
#error_log logs/error.log info;

#设置pid存放路径(pid是控制系统中重要文件)
#pid logs/nginx.pid;

#设置最大连接数
events{
    worker_connections 1024;
}

http{
    #主要是用于设置一组可以在proxy_pass和fastcgi_pass指令中使用额代理服务器,默认负载均衡方式为轮询
    upstream tomcat_client {
        #设置同一个cookie的两次/多次请求,请求的是同一台服务器
        ip_hash;
        #weight权重,默认1,权重越大访问概率越大,backup备用服务器,服务器全部崩溃后启动
        server 192.168.2.21:8080 weight=5;
        server 192.168.2.22:8080 weight=5;
        server 192.168.2.23:8080 weight=5 backup;
    }

    #开启gzip压缩,开启后,访问网页会自动压缩
    #gzip on;

    #指定服务器的名称和参数
    server {
        listen 80;
        server_name  test.nginxtest.net;

        #设置字符
        #charset koi8-r;

        #location / 指用根目录做负载均衡
        location / {
            proxy_pass http://tomcat_client;
            proxy_redirect default;
            #设置代理
            proxy_set_header Host $host;
            proxy_set_header X-Real-IP $remote_addr;
        }
    }
}

  10、运行方式同上面

  11、本编博客借鉴:http://blog.csdn.net/smartbetter/article/details/53535435

 

posted @ 2017-05-02 11:45  小不点丶  阅读(3722)  评论(0编辑  收藏  举报