1

私たちのアプリでは、共同オンライン編集を可能にすることを検討しています。これは、マインド マップのような構造を作成するために JavaScript に大きく依存するグラフィック アプリケーションです。

最初の明白な候補は、WebSocket を使用することです。

ユーザーは、これらのマップを作成するためにサイトにアクセスします。独自のプロセスを開始するように見えるem-websocketを見てきましたが、

 EventMachine.run {

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

そこにはコンテキスト情報があまりないようです。人々は同時に異なるマップを編集しているかもしれません! だから私の現在の推測は

  • 編集中のマップごとに、新しい WebSocket サーバーが別のポートで開始されます。
  • これには WebSocket ライフサイクルの制御が必要になるため、そのようなサーバーThreadごとに forを生成することを考えていました。WebSocket

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

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

人々はこのアプローチについてどう思いますか? これは合理的ですか?他の提案はありますか?ありがとうございました!

4

0 に答える 0