どうになったという経験を通じてセッションにはRubyのハイブリッド/GWTシステム?
-
22-09-2019 - |
質問
私は現在、Ruby on Railsシステムが計画されており、そのポートでGWT.前にこの権限とされた証明のコンセプトの一部のサイトについて書かれているわけではGWTることを示GWT使用できますので表示の現在の内容です。データの流れをGWTの一部をシステムの役割としては:
- お客様に送RPCをGWTサーバー
- サーバが受けRPC通し、それと同等のものAjax要求のレールシステム
- サーバーを生成するJavaオブジェクトの結果からAjax請求することでバージョン
発行っ走る現在は管理ユーザーセッションデータの両方のシステム。してみて下さい1Tomcatインスタンスは、独自のタイプのセッション、そしてRubyのシステムActiveRecordStore存のセッションデータのデータベースです。
ここでの問題は、時TomcatのシステムのRubyシステムの場合、GWTお客様はログインリクエストは、最終ユーザーログインからのGWTシステムですべての送信Ajaxの要望ではないかということにはレールシステムとしてだけでなく、現在のユーザからTomcatのシステムは、お客様にします。
良かった場合、ユーザーが始まるセッションのTomcatシステムで、Rubyのシステムを意識することに相当セッションでありながらも、Tomcatサーバで単一のクライアンをつけることによって、レールシステムであることを多くのユーザーとの通信にかかるシングル。
解決
私はこの問題を解決する最良の方法は、セッションを保存するためにデータベースの代わりにクッキーを使用することだと思います。 Railsは、実際にそれが今いくつかの時間のためのデフォルトのCookieストアだ、ネイティブにこれをサポートしています。クッキー自体は、ユーザーの改ざんを防止するためのサーバ秘密によって署名されています。私はRailsの実装では、あなたはJavaでそれを実装する必要がある場合があります、またはあなたが同じ考えを使用して両側に独自のクッキーマネージャを実装することができるようにデータをロード/ダンプにRubyのマーシャリングを使用すると考えます。
それはちょうどあなたのJavaアプリケーションでのJRubyからRubyのコードを使用することも可能である。
他のヒント
私はRoRのことは知らないが、ほとんどのWeb技術でセッションがクッキーを使用して維持されています。あなたがRoRのインスタンスにして、Javaサーバーから複数の呼び出し間で(特定のユーザーのための)クッキーを保存する場合は、すべての良いことがあります。