使用nginx实现websocket的负载均衡
阅读数:122 评论数:0
跳转到新版页面分类
应用软件
正文
map $http_upgrade $connection_upgrade {
default upgrade;
'' close;
}
upstream websocket {
server localhost:9090;
server localhost:9091;
server localhost:9092;
}
server {
listen 8080;
location /ws {
proxy_pass http://websocket;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $connection_upgrade;
proxy_read_timeout 600s;
}
}
proxy_read_timeout默认是60s,如果60s内没有通信,长连接会断开。所以需要心跳机制,在这个时段内发送心跳。
相关推荐
语法:
rewrite regex replacement [flag]
正则表达式regex
.
匹配除换行符以外的的任意字符
?
0或1次匹配前面的字符
+
1次或多次匹配前面的
原因是在nginx配置文件中配置upstream时用了“_”字符,如上用的tomcat_server,直接报错了。改成tomcatserver,即不使用“_&
相关名词
1、nginx
一个高性能web-server和实施反向代理的软件。
2、lvs
Linux Virtual Server,Linux操作系统层面的一个高性能、高可用、负载均衡服务器。
3、
^
匹配字符串开始的位置
$
匹配字符串结束的位置
.*
.匹配任意字符串,*匹配数量0到正无穷
\.
斜杠用来转义,\.匹配.
(值1|值2)
或匹配模式
i
不区分大小写