鈍足ランナーのIT日記

走るのが好きな5流のITエンジニアのブログ。

趣味の範囲は広いけど、どれも中途半端なクソブロガー楽しめるWebアプリを作ってあっと言わせたい。サーバーサイドPerl(Mojolicious)、クライアントサイドVue.js。Arduinoにも触手を伸ばす予定。

starmanのワーカー間でキャッシュを共有したい

Mojoliciousで開発していてるときは、morbo script/hogehogeで 上げているので、これは1つのプロセスで開発していることになるのかな。 そのときはキャッシュは上手くいってそうでした。

そして、これを本番環境にもってきたときに、 starmanはデフォルトで5つのワーカーが立ち上がるようになっている。 オレオレキャッシュをモデルクラスに実装したが、どうも5つのワーカー間では共有できていないというのが 問題で。それぞれのworkerではキャッシュされる。

まぁ、プロセスが違うんだからインスタンスは共有できないのも至極当然だとは思いますが。

master process
├─children(worker)
├─children(worker)
├─children(worker)
├─children(worker)
├─children(worker)

実は、すごい簡単な方法があるのかもしれない。

とりあえず、少しずつ、調べてみよう。

私と同じことを 考えている人がいた。。

あとこちら

宮川さんの回答。

use memcache or some other shared memory mechanism.