3

Memcached で動作するように Heroku で Play Framework を構成したいと考えています。

このスレッドは、ハードコードされた構成値を使用することを提案しています。Heroku のドキュメントには、ユーザー/パスワード/ホストが環境変数として公開されていると記載されています...ハードコードされた値を使用せずに、これらを直接ロードするように Play に指示する方法はありますか?

これは私が試したものです:

%prod.memcached=enabled
%prod.memcached.host=%MEMCACHE_SERVERS
%prod.memcached.user=%MEMCACHE_USERNAME
%prod.memcached.password=%MEMCACHE_PASSWORD

しかし、うまくいかないようです

4

2 に答える 2

2

問題の回避策を見つけました。Heroku では、「Memcache Add On」を構成すると、次の環境変数が提供されます。

${MEMCACHE_PASSWORD}       
${MEMCACHE_SERVERS}   
${MEMCACHE_USERNAME}

ただし、%prod.memcached.host=${MEMCACHE_SERVERS} を設定すると、正しく動作するためにデフォルトのポートも必要になります (つまり、${MEMCACHE_SERVERS}:11211)。

したがって、次のようにして追加の環境変数を追加できます。

  1. heroku config:add MEMCACHE_SERVER=${MEMCACHE_SERVERS}:11211あなたのコンソールで
  2. %prod.memcached.host=${MEMCACHE_SERVER}confファイルに設定します
  3. アプリを再起動します

- -また - -

${MEMCACHE_SERVERS}conf ファイルの環境変数の末尾にポート (11211) を追加する方法を見つけます。「:」文字のため、起動時に例外がスローされるため、どうすればよいかわかりません。

play 2.x でも同じエラーが発生しましたが、play 1.x でも動作するはずです。

于 2012-06-25T09:44:40.240 に答える
0

試す:

%prod.memcached.host=${MEMCACHE_SERVERS}
%prod.memcached.user=${MEMCACHE_USERNAME}
%prod.memcached.password=${MEMCACHE_PASSWORD}
于 2012-06-23T23:58:45.887 に答える