ngin Finding Everything About Nginx Here

nginx搭建tcp代理服务器

发表于 2015-07-31 阅读数 2988

nginx不仅可以是http代理服务器,也可以轻松搭建成tcp代理服务器。


1. 安装

> wget http://nginx.org/download/nginx-1.9.0.tar.gz

> tar zxvf nginx-1.9.0.tar.gz


版本要求 1.9.0+


2、配置

worker_processes auto;

error_log /var/log/nginx/error.log info;

stream {

    upstream backend {

        hash $remote_addr consistent;

        server backend1.example.com:12345 weight=5;

        server 127.0.0.1:12345            max_fails=3 fail_timeout=30s;

        server unix:/tmp/backend3;

    }

    server {

        listen 12345;

        proxy_connect_timeout 1s;

        proxy_timeout 3s;

        proxy_pass backend;

    }

    server {

        listen [::1]:12345;

        proxy_pass unix:/tmp/stream.socket;

    }

}


3. 补充

现在nginx 1.9是开发版,目前稳定版没有stream的功能,但在下个的稳定版发布时,这功能就会集成进来。因此推荐以后用http proxy的同学可以考虑换成tcp proxy,如果只是做简单的代理而已,而且性能上会更优异。


推荐阅读:nginx源码分析之stream设计