Ruby在前端和后端都有

时间:2015-08-22 20:37:08

标签: ruby-on-rails ruby websocket sails.js publish-subscribe

我试图弄清楚是否可以在Ruby堆栈上完全构建Web应用程序。

我正在寻找以下架构:

  

Frontend< ---带有Pub / Sub的Websockets --->后端

最重要的是,我真的很喜欢Rails方法"约定优于配置"。结果,我正在寻找一些自以为是的"将处理这种情况的框架。

我知道使用Javascript堆栈更容易实现。例如,使用Sails.js

但是,它的实验。所以,我不是在寻找最有效的解决方案。

有人建造这样的东西吗?什么是一组合理的库/框架来构建类似的东西?

2 个答案:

答案 0 :(得分:3)

既然你说这是一个实验,我建议你试试Volt。它使用Opal,它将Ruby转录为JS并具有Meteor.js着名的反应同步。还有很多栏杆,你很快就会发现自己处于熟悉的水域。

这两种技术还没有完全存在,但是围绕它们进行了大量宣传,它们肯定会在Ruby的近期发挥重要作用。

答案 1 :(得分:1)

正如@ndn所提到的,Volt很有意思......但是,在我看来,我采用的部分将是前端的Opal核心。

对于我来说,Volt过于自以为是。

我想将自己的宠物项目添加到表Plezi,它可以是一个独立的框架,也可以通过使用Iodine服务器在Rails应用程序中一起运行。

我觉得Plezi在配置和约定之间有更好的平衡。和代码自由。它通过自动将websocket广播/单播映射到各自的控制器和方法(broadcast :method, arg1, arg2...)来管理后端,并自动将Redis通道映射到控制器(或全局多播),以便轻松扩展。

与此同时,Plezi对前端没有任何作用,也没有对前端采取任何措施。这是设计的,既为了更好的安全性(不会自动信任传入的网络数据),又允许各种可能的客户端,如本机应用程序(iOS,android),浏览器,脚本等等。 ..这将是Opal可以进入的地方(或RubyMotion)。