0

Heroku がホストする 5 つの dyno を持つ Play アプリケーションがあります。私のdynoが異なる期間にランダムに再起動されたようです。たとえば、そのうちの 3 つが 22 時間前に自動的に再起動され、そのうちの 2 つが 10 時間前に再起動されました (この時間がキャッシュのクリアによってトリガーされたかどうかは不明です)。キャッシュされたデータは dyno 間で永続的ではないようです。私の問題は、Heroku アプリケーションに同じリクエストを複数回送信したときに、異なるキャッシュされた応答が返されることです。応答には最新のデータもあれば、古いデータもありました。これは、私のリクエストが別の dyno によって処理されたためだと思います。再起動後、すべてのdynoで問題が修正されました(これにより、すべてのdynoのキャッシュもクリアされると思います)。

では、dyno のランダムな再起動を引き起こした原因と、その理由を知りたいですか?

この場合、キャッシュされたデータの不一致を解決するにはどうすればよいですか?

ありがとう

4

2 に答える 2

3

水平方向にスケーリングするときにこの種の問題を回避するには、相互化されたキャッシュを使用する必要があると思います。

Couchbase はそれを行うための優れたソリューションです。これは、Clever Cloud ( http://www.clever-cloud.com/en/ ) で内部的に使用されています。これが、Couchbase をサービスとしてリリースした理由です。

于 2013-09-25T09:54:33.403 に答える
1

dyno の再起動については、ドキュメントを試しましたか? Dynoは少なくとも 1 日に 1 回循環します

于 2013-09-25T12:17:15.613 に答える