浅谈nginx

原创 2018年04月17日 16:39:08

一、什么是nginx

        nginx是一款高性能的http服务器/反向代理服务器及电子邮件代理服务器。

        官方测试nginx能够支撑5万并发链接,并且cpu、内存等资源消耗缺非常低,运行非常稳定。

二、nginx的应用场景

        1.http服务器。nginx是一个http服务器,可以独立提供http服务。可以做网页静态服务器。

        2.虚拟主机。可以实现在一台服务器虚拟出多个网站。例如个人网站使用的虚拟主机。

        3.反向代理,负载均衡。当网站的服务量达到一定程度后,单台服务器不能满足用户的请求时,需要用多台服务器集群可以使用nginx做反向代理。并且多台服务器可以平均分担负载,不会因为某台服务器负载高宕机而某台服务器闲置的情况。

        反向代理:(Reverse Proxy)指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给internet上请求连接的客户端,此时代理服务器对外就表现为一个反向代理服务器。

        通常的代理服务器:只用于代理内部网络对internet的连接请求,客户机必须指定代理服务器,并将本来直接要发送到web服务器上的http请求发送到代理服务器中,由代理服务器向internet上的web服务器发起请求,最终达到客户机上的目的。

        负载均衡:(load Balance)分摊到多个操作单元上进行执行,从而共同完成工作任务。负载均衡建立在现有网络结构之上,它提供了一种廉价有效透明的方法扩展设备和服务器的带宽、增加吞吐量、加强网络数据处理能力、提高网络的灵活性和可用性。

配置nginx负载均衡:

    upstream myServer{   //定义负载均衡设备的ip及设备状态

        server 127.0.0.1:9090 down;

        server 127.0.0.1:6060 weight=2;

        server 127.0.0.1:7070;

        server 127.0.0.1:8080 backup;

    }

    在需要使用负载的Server节点下添加:

            proxy_pass http://myServer;

    upstream每个设备的状态:

        down:表示当前的server暂时不参与负载

        weight默认为1,weight越大,负载的权重就越大。

    max_fails:允许请求失败的次数默认为1.当超过最大次数时,返回proxy_next_upstream模块定义的错误fail_timeout:max_fails次失败后,暂停的时间。

       backup:其他所有的非backup机器down或者忙的时候,请求backup机器。所以这台机器压力会最轻。    

三、nginx的优缺点

        1.占内存小,可以实现高并发连接,处理响应快。

        2.可以实现http服务器、虚拟主机、反向代理、负载均衡。

        3.nginx配置简单

        4.可以不暴露真实服务器IP地址。


收藏助手
不良信息举报
您举报文章:浅谈nginx
举报原因:
原因补充:

(最多只允许输入30个字)