我们对实时web框架的要求包括:
- <
- 轻量级框架/gh>
- 服务器端支持scala
- 灵活的通信机制:可以是Ajax,服务器发送事件或WebSocket。
- 对客户端html的修改相对较少。
- 。使用WebSockets js库是可以的
- 引入显著的编译时间/服务器端页面处理不是。例如,播放路由注释是不可接受的
- 必须有工作的例子:
- 客户端
- 服务器间通信
- 全功能构建。最好是sbt,但maven也可以接受
我已经评估了以下框架:它们中的每一个都有一个或多个缺点,使我们的应用程序中的使用不太理想。
Play:有点重,但更重要的是它在html页面中引入了自定义注释/处理。我们需要普通的html页面
喷雾:更接近标记。但是,尽管我发现了许多示例应用程序,但基于参与者的通信在这些示例中不起作用。SimpleServer示例有一个内置的"案例"计数器(来自SimpleClient),它不能按给定的方式工作:它们当然可以使其工作。最终 . .
大气:缺乏实例
- jetty, netty:缺乏可在sbt或maven中构建的完整功能示例
socko:降价基本上规定使用eclipse/scala-IDE运行测试/进行开发。这对我们来说是不可能的(IJ商店)。不清楚如何运行示例和/或从sbt/命令行启动它们的服务器。
最后,我编写了大量围绕Netty的自定义代码。在它更好的形状后,我可能会把它放在GitHub上。
http://xitrum-framework.github。io/正在积极开发,并包含SocksJs支持。它是相当轻量级的,你可以直接在actor上标注路由,它们就会暴露在web上。