0

サイトのさまざまなページにメッセージを表示する機能を実装したいと考えています。page、、などのフィールドを含むモデルを作成しましmessageactiveactive=falseメッセージが表示されない場合。これはうまくいきます。

ここで、しばらくの間、すべてのメッセージをオン/オフする機能を追加したいと考えています。各メッセージとセットを更新したくないactive=false理由は、1) 大量のメッセージが存在する可能性があるため、2) 電源をオフにしたときにアクティブ/非アクティブだったメッセージを保存して、電源をオンにしたときに初期状態を復元する必要があるためです。 .

モデルで新しい「クラス全体」の変数を使用できれば、これは非常に便利です@@active。ただし、マルチスレッドアプリ(私が使用unicorn)を使用する@@activeと、すべてのプロセスで共有されないため、問題が発生する可能性があります。

これに対する適切な解決策をグーグルで検索できませんでした。誰かが助けてくれるでしょうか?

4

2 に答える 2

0

ユニコーン設定で preload_app=true を設定してみてください。これにより、ユニコーン マスター プロセスがアプリをプリロードし、他のすべてのワーカーがロードされたデータ構造を共有できるようになります。プロセス間でメモリを共有するには、Ruby Enterprise Edition に移行することをお勧めします。

于 2013-05-30T14:17:40.267 に答える