Rust over WebSockets 的同步状态机。

时间:2024-07-18 12:21:00
【文件属性】:

文件名称:Rust over WebSockets 的同步状态机。

文件大小:119KB

文件格式:ZIP

更新时间:2024-07-18 12:21:00

aper

阿珀Aper 是一个通过WebSockets实时共享应用程序状态的框架。它的用例包括基于浏览器的协作工具和多人浏览器内游戏。具体来说,Aper 提供了将您的程序表示为状态机的脚手架,以及在用户浏览器中运行的多个实例之间保持该状态机同步的基础设施。Aper 在客户端与Yew集成,在服务器端与Actix集成。尽管重点是在 WebAssembly 中运行并通过 WebSocket 通信的基于浏览器的应用程序,但核心状态机脚手架可以独立于客户端/服务器架构使用,甚至可以与非 WebSocket 协议一起使用。Aper 正在Swift发展。将此视为技术预览。文档Aper 入门指南Redwords ,一个用 Aper 构建的实验性多人文字游戏。路线图在第一个非预览版发布之前,需要整理以下内容:无需用户输入即可发生的状态转换(例如游戏中的计时器)。客户端上的乐观状态更新,如有必要回滚。在客户端实现优雅的重新连接。(例如,iOS 似乎删除了后台选项卡的 websocket 连接,需要自动重新连接)允许状态机处理断开连接。允许状态机“拒绝”转换,而不仅仅是将其视为无操作,以避免传播它。为了灵活性,使用工


【文件预览】:
aper-main
----aper()
--------Cargo.lock(2KB)
--------aper_derive()
--------src()
--------Cargo.toml(657B)
----ape.svg(9KB)
----Cargo.lock(55KB)
----aper-actix()
--------Cargo.lock(47KB)
--------src()
--------Cargo.toml(445B)
----.github()
--------workflows()
----LICENSE(1KB)
----aper-build()
--------src()
--------Cargo.toml(224B)
----Cargo.toml(147B)
----examples()
--------drop-four()
--------counter()
----.gitignore(22B)
----README.md(2KB)
----aper-yew()
--------Cargo.lock(14KB)
--------src()
--------Cargo.toml(399B)

网友评论