在我们的应用中,我们正在考虑启用协作式在线编辑。它是一个严重依赖于javascript的图形应用程序,用于创建类似思维导图的结构。
第一个明显的候选人是使用websockets。
用户访问该网站以创建这些地图。我看过em-websocket似乎开始了一个自己的过程,但是
EventMachine.run {
EventMachine::WebSocket.start(:host => "0.0.0.0", :port => 9876) do |ws|
似乎那里没有太多的背景信息;人们可能同时编辑不同的地图! 所以我目前的猜测是
因为这需要控制WebSocket
生命周期,我想为每个这样的Thread
服务器生成WebSocket
:
#on map create / edit: Thread.new做 EventMachine.run {
EventMachine::WebSocket.start(:host => "0.0.0.0", :port => 9876) do |ws|
....
end
人们对这种方法有何看法?这合理吗?还有其他建议吗?谢谢!