3

VisualWorks Smalltalk、Seaside、Gemstone/Sを使用してWebアプリケーションを作成しています。

現時点では、クライアントが常に同じイメージに戻る場合にのみ、クライアントのセッション状態を維持できます(ただし、セッションが期限切れになった場合、クライアントは任意のイメージで再起動できます)。

Gemstone/Sデータベースを使用してセッション状態を共有することが可能かどうかを理解したいと思います。これは、単純なhttp負荷分散を使用できることを意味し、多数のユーザーのイメージアフィニティについて心配する必要はありません。

SeasideのGemstone実装では、これらすべてが「無料」で行われていることがわかりますが、Visualworksははるかに強力なIDEを備えており、すでに使い慣れているため、Visualworksを使用したいと思います。これに関するGoogleでのすべての参照は、Gemstonesmalltalkの使用とSeasideのGemstone実装を前提としています。

誰かがこれをしましたか?もしそうなら、私が従うことができる調査結果やチュートリアルの記事はありますか?検索で明らかなリンクを見逃したが、実際にはそれを見ることができなかった場合、多くの謝罪。

4

2 に答える 2

2

私の知る限り、それを行う簡単な方法はありません。非常に単純化されており、Seasideによって行われた多くの最適化を無視して、Seasideセッションは再開されるのを待っている実行スタックのスナップショットです。そのフリーズした実行スタックを別のイメージに移行して再起動するのは簡単ではありません。

于 2013-03-26T09:20:44.027 に答える
1

このアプリケーションは同じスタック(Seaside、VW、GS)を使用していますが、VWとGSの間で完全なGBSインターフェイスを使用していないため、1つのVWイメージで複数のSeasideセッションにサービスを提供できます。ただし、このミックスでも、各VWイメージへのセッションアフィニティが必要です。

SeasideアプリをVWで開発する理由は理にかなっています。これは確かに優れた開発環境ですが、開発とデプロイを分割することを検討してください。VWでコードを記述し、GLASSでデプロイします。これはGLASSを使用する従来の方法ですが、開発にはPharoを使用します。

于 2013-03-26T11:52:39.940 に答える