【socketioxide和axum集成-实现websocket实时通信-Rust点滴】

socketioxide的axum集成

启动socketio依靠examle里的layer

使用可变State依靠axum里的example

使用了,Arc,这个synce机制,有加锁的办法.

提取client,IP

为了了解每个客户的在线状态,需要提取其IP.作为一个身份标识.

一类是tcp,socket对方地址

在建立服务时获得引用,依靠HTTPExtension,这是原始tcp套接字的获取,不适应docket容器,非HOST模式,和反向代理的复杂情况...

一类是SocketRef里socket.re_ref.

在代理模式下

在handle里的缺省参数,socketRef的函数req_ref(),提取到请求信息其中的request.headers,会有反向代理补充的x-forward-ip,可以在调试后确定下来.

axum的get,or,post请求处理中使用socketRef

在连接建立时,把socketRef.clone()存入,共享State.然后在get,orpost的axum route handle获取并使用.

主要用于通过url发送广播消息, 不同服务器间的消息传递.

flask--> rust,socketio->socketio client.

因为要完成flask的socketio的解耦.目前只想到了这个办法.

相关推荐
时空系7 小时前
第4篇:如果...那么——让程序做选择 Rust中文编程
开发语言·网络·rust
可视化运维管理爱好者8 小时前
pi mono操作开发指南
运维·网络·ai
蜡笔小新拯救世界8 小时前
部分安全笔记总结
linux·网络·web安全
日取其半万世不竭9 小时前
WordPress建站 + 免费SSL证书配置完整教程
网络·网络协议·ssl
@insist1239 小时前
信息安全工程师-防火墙核心技术深度解析:包过滤与状态检测
网络·安全·软考·信息安全工程师·软件水平考试
其实防守也摸鱼9 小时前
CTF密码学综合教学指南--第一章
网络·安全·网络安全·密码学·ctf·法律
Walter先生9 小时前
Python 行情数据清洗实战:Z-Score、MAD 与分位数过滤的异常值检测
后端·websocket·架构·实时行情数据源·美股行情api
七七powerful10 小时前
AI+运维提效--HTTPS 证书有效期监控方案
网络协议·http·https
楼田莉子10 小时前
Linux网络:数据链路层
linux·服务器·开发语言·网络·c++·后端
环流_10 小时前
IP协议特性
网络·tcp/ip·智能路由器