在ruby on rails上进行协作编辑 - 架构方法?

时间:2013-01-18 20:36:02

标签: ruby-on-rails websocket eventmachine collaborative

在我们的应用中,我们正在考虑启用协作式在线编辑。它是一个严重依赖于javascript的图形应用程序,用于创建类似思维导图的结构。

第一个明显的候选人是使用websockets。

用户访问该网站以创建这些地图。我看过em-websocket似乎开始了一个自己的过程,但是

 EventMachine.run {

         EventMachine::WebSocket.start(:host => "0.0.0.0", :port => 9876) do |ws|

似乎那里没有太多的背景信息;人们可能同时编辑不同的地图! 所以我目前的猜测是

  • 对于正在编辑的每个地图,都会启动一个新的WebSocket服务器 不同的港口
  • 因为这需要控制WebSocket 生命周期,我想为每个这样的Thread服务器生成WebSocket

    #on map create / edit:        Thread.new做            EventMachine.run {

             EventMachine::WebSocket.start(:host => "0.0.0.0", :port => 9876) do |ws|
           ....
       end
    

人们对这种方法有何看法?这合理吗?还有其他建议吗?谢谢!

0 个答案:

没有答案