Nginx启用具有一般的TCP代理和负载均衡的stream模块

一直以来,nginx并不支持TCP协议,一些基于TCP的业务必须依靠别的高可用负载软件来实现。但在nginx 1.9.0以后,意识到了此问题,终于得到了重大的重写。

2015-04-28 nginx更新说明 

nginx-1.9.0 mainline version has been released, with the stream module for generic TCP proxying and load balancing.

nginx-1.9.0主线版本已经发布,增加了具有一般的TCP代理和负载均衡的stream模块。

说明:ngx_stream_core_module 模块在nginx-1.9.0以后才会拥有,但在安装时并不会将此安装。需要在./configure时通过--with-stream 参数来激活这个模块。

下面来分享一个官方提供的stream简单的demo

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;
    }
}

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏FreeBuf

Python编写的开源Struts2全版本漏洞检测工具

0x01 说明: 由于struts2框架频繁爆出漏洞,为方便安全从业人员检测并及时修复,遂将struts历史版本payload整合在一起(ST2-005至ST2...

4596
来自专栏运维前线

php7下安装event扩展

php7下安装event扩展 有效安排I/O,时间和信号的扩展 使用可用于特定平台的最佳I/O通知机制的事件,是PHP基础设施的libevent端口。 ...

28310
来自专栏史上最简单的Spring Cloud教程

Openresty最佳案例 | 第6篇:OpenResty连接Mysql

centos 安装mysl Centos系统下安装mysql,先下载mysql-community-release-el7-5.noarch.rpm,然后通过y...

3459
来自专栏测试文章

当影响范围内Nginx默认配置文件中开启缓存

当影响范围内Nginx默认配置文件中开启缓存功能时,攻击者可以通过发送包含恶意构造 range 域的 header 请求,来获取响应中的缓存文件头部信息。在某些...

19311
来自专栏xingoo, 一个梦想做发明家的程序员

公司内网,无法使用yum在线下载,肿么办?

1 配置上网代理   编辑/etc/yum.conf,增加如下属性: proxy=你的代理地址 proxy_user=你的用户名 proxy_passwor...

26410
来自专栏运维技术迷

HTTP响应可视化测试工具-httpstat

httpstat是一款可以测试http状态的可视化工具,通过这个工具可以看出来http响应信息。包括dns解析、tcp连接等信息,httpstat一共有gola...

3688
来自专栏积累沉淀

hbase集群安装(1)-ssh安装及配置

安装ssh服务器端 赋予tg用户权限 sudo chown -R tg:tg /software/ ? 查看用户被赋予的权限 ? 1.检查ssh客户端是否安装:...

1975
来自专栏深度学习之tensorflow实战篇

windows下mysql忘记root密码,如何重设密码

添加windows下mysql服务 以管理员身份打开cmd,执行 mysqld --install net stop mysql # 忘记密码找回 找到mysq...

3035
来自专栏不想当开发的产品不是好测试

pip is configured with locations that require TLS/SSL, however the ssl module in Python is not avail

# 背景 安装pip后发现执行pip install pytest,提示下面错误 pip is configured with locations that r...

83111
来自专栏DT乱“码”

Java知识图谱收集整理

1、Java学习路径1 ? 2、Java学习路径2 ? 3、Java Web学习路径 ? 4、Java编程所需的工具及知识 ? 5、Java集合类 ? 6、Ja...

2579

扫码关注云+社区