spring websocket基于STOMP协议实现,apache httpd反向代理配置
2019独角兽企业重金招聘Python工程师标准>>>
最近打算正式使用websocket,需要做负载,而使用的是apache http server,捣腾了一天找到了一种比较靠谱的方式,特此记录一下。
加载的模块如下:
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_connect_module modules/mod_proxy_connect.so
LoadModule proxy_http_module modules/mod_proxy_http.so
LoadModule proxy_wstunnel_module modules/mod_proxy_wstunnel.so
LoadModule proxy_balancer_module modules/mod_proxy_balancer.so
LoadModule rewrite_module modules/mod_rewrite.so
LoadModule proxy_express_module modules/mod_proxy_express.so
不排除有遗漏,因为我这边全部加载的,只去除了几个不需要的。
conf/http.conf中需要加入或者删除注释:
Include conf/extra/httpd-vhosts.conf
conf/extra/httpd-vhosts.conf配置:
<VirtualHost *:8088>ServerAdmin webmaster@dummy-host.bigdata.comServerName localhostErrorLog "logs/bigdata.com-error_log"CustomLog "logs/bigdata.com-access_log" commonProxyRequests OffHeader add Set-Cookie "ROUTEID=.%{BALANCER_WORKER_ROUTE}e; path=/" env=BALANCER_ROUTE_CHANGED# websocketRewriteEngine On RewriteCond %{HTTP:Connection} Upgrade [NC]RewriteCond %{HTTP:Upgrade} websocket [NC]RewriteRule /(.*) balancer://proxy2/$1 [P,QSA,L]Proxypass /bigdata balancer://proxy#stickysession=JSESSIONID|jsessionid nofailover=OnProxyPassReverse /bigdata balancer://proxy#ProxyPassReverseCookiePath /bigdata /bigdata<Proxy balancer://proxy2>Order Deny,AllowAllow from allRequestHeader set Connection "Upgrade"RequestHeader set Upgrade "websocket" BalancerMember ws://10.214.136.181:8080 loadfactor=2 route=work89BalancerMember ws://10.214.136.180:8080 loadfactor=1 route=work90ProxySet stickysession=ROUTEID</Proxy><Proxy balancer://proxy>Order Deny,AllowAllow from allBalancerMember http://10.214.136.180:8080/bigdata loadfactor=2 route=work89BalancerMember http://10.214.136.180:8080/bigdata loadfactor=1 route=work90ProxySet stickysession=ROUTEID</Proxy></VirtualHost>
根据头信息是否是websocket来重写url。
转载于:https://my.oschina.net/u/989834/blog/1934942
spring websocket基于STOMP协议实现,apache httpd反向代理配置相关推荐
- 详细分析 apache httpd 反向代理的用法
代理方式有两种:正向代理和反向代理. 正向代理是为客户端转发请求,各客户端将请求交给正向代理服务器,正向代理服务器再负责转发给服务端,响应时服务端先响应给正向代理服务器,正向代理服务器再转发给对应的客 ...
- js 链接websocket马上断开_WebSocket之基于STOMP协议的广播模式实现群聊功能
又是一个老套的古诗词赏析 不恨此花飞尽,恨西园.落红难缀.--苏轼<水龙吟·次韵章质夫杨花词> WebSocket与STOMP协议 相关简介 WebSocket WebSocket 是一种 ...
- 基于stomp协议的websocket
1.依赖 <dependency><groupId>org.springframework.boot</groupId><artifactId>spri ...
- 由浅入深学习Apache httpd原理与配置
由浅入深学习Apache httpd原理与配置 原贴:http://jackcui.blog.51cto.com/11877206/1858989 文章防盗链地址:http://jackcui.blo ...
- 如何在 FreeBSD 10.2 上安装 Nginx 作为 Apache 的反向代理
如何在 FreeBSD 10.2 上安装 Nginx 作为 Apache 的反向代理 Nginx 是一款自由开源的 HTTP 和反向代理服务器,也可以用作 POP3/IMAP 的邮件代理服务器.Ngi ...
- springboot+websocket+sockjs进行消息推送【基于STOMP协议】
1.浅谈WebSocket WebSocket是在HTML5基础上单个TCP连接上进行全双工通讯的协议,只要浏览器和服务器进行一次握手,就可以建立一条快速通道,两者就可以实现数据互传了.说白了,就是打 ...
- 微信小程序的websocket使用stomp协议--简单实用的npm包
需求背景 在公司实习期间,要求做一个小程序的websocket连接,用于设备的实时控制和状态查询. 其中后端使用的是stomp协议,而微信小程序是不支持stomp协议的.但是当我知道的时候,后端已经全 ...
- Apache Httpd 2.2 配置CA证书,实现Https加密通讯
什么是CA证书 关于什么是CA证书,以及如何使用Open-SSL申请和搭建CA证书,我们在之前的文章中已经有过介绍,这里不再赘述.若有疑问,可参考之前的文章. http://www.pojun.tec ...
- 通过python基于netconf协议获取网络中网元的配置数据,助力企业网络控制自动化轻松实现!
摘要:在当今信息化时代,大多数企业都需要网络支撑企业的ICT运行,提升企业运行效率,针对企业网络中的网元设备(包括交换机,路由器,防火墙等),很多企业希望根据自身的业务特点定制网络管理,比如可以实现网 ...
最新文章
- VMware安装CentOS6.8详细教程
- 【Prometheus】prometheus生成快照,并冷备份数据,恢复数据
- 论SVD和PCA的渊源
- 分布式文档系统-document id的手动指定与自动生成两种方式解析(来自学习笔记:龙果学院ES课程)
- 构件开发常见问题和错误的解决方案和处理方法
- Linux查看和剔除当前登录用户
- 全国胸最小的省是哪个,你知道吗?| 今日最佳
- floquet端口必须沿z轴设置_Ansys Workbench 振动给料机偏心轴的模态分析
- Linux 服务器惊现比特币勒索事件,腾讯云安全专家来支招
- Python_Tika
- Mysql之查询基础select
- dell电脑如何安装ubuntu系统_如何在 Dell PC 上安装 Ubuntu Linux
- 原创|批处理实现安卓设备自动重启压力测试(自动生成日志和计算重启时间)
- 文件md5怎么会变化
- 一般程序员真实工资是多少?
- mysql中反单引号的作用_mysql中反单引号(`)作用
- 华为手机虚拟键盘遮挡菜单
- 【已解决】平板作为外接显示屏-Duet
- VIVADO版本不一致的IP更新问题
- 2020个人所得税,税前工资 和 到手工资的相互计算源码(java)