Table of Contents [expand]
MemCachier アドオンには、そのキャッシュの内容をフラッシュするための HTTP API が用意されています。これにより、ステージングまたは本番環境にデプロイするたびにキャッシュをフラッシュする Heroku HTTP Deploy Hooks を設定して、キャッシュを常にクリーンで準備が整った状態にすることができます。
手順 1: MemCachier の資格情報を取得する
MemCachier API と通信するには、アプリの MEMCACHIER_USERNAME
および MEMCACHIER_PASSWORD
環境設定の値が必要です。これらの値は heroku config
CLI コマンドを使用して、または MemCachier 分析ダッシュボードで検索することによって取得できます。
これらの値を取得したら、それを使用してキャッシュの一意の ID を取得できます。指示された場所に MemCachier のユーザー名とパスワードを入力して、次の cURL リクエストを送信します。
$ curl "https://analytics.memcachier.com/api/v1/login" \
> --user "REPLACE_WITH_MEMCACHIER_USERNAME:REPLACE_WITH_MEMCACHIER_PASSWORD"
この API の応答の本体には、キャッシュの一意の ID が含まれています。
{
"cache_id": 123456
}
手順 2: キャッシュのフラッシュをテストする
MemCachier のユーザー名、パスワード、キャッシュ ID を取得したら、次の cURL リクエストを使用してキャッシュをフラッシュできます (指示されている箇所を自分の資格情報に置き換える)。
$ curl "https://analytics.memcachier.com/api/v1/REPLACE_WITH_MEMCACHIER_CACHE_ID/flush" \
> -X POST --user "REPLACE_WITH_MEMCACHIER_USERNAME:REPLACE_WITH_MEMCACHIER_PASSWORD"
上記のリクエストがエラーを返す場合は、資格情報が分析ダッシュボードで API アクセス用に設定されていることを確認してください。
手順 3: Deploy Hooks を設定する
cURL リクエストを使用してキャッシュを正常にフラッシュしたら、次のように、同じ一連の資格情報を使用して Deploy Hooks を設定できます (指示されている箇所を自分の資格情報に置き換える)。
$ heroku addons:create deployhooks:http \
> --url="https://REPLACE_WITH_MEMCACHIER_USERNAME:REPLACE_WITH_MEMCACHIER_PASSWORD@\
> analytics.memcachier.com/api/v1//REPLACE_WITH_MEMCACHIER_CACHE_ID/flush"
これで終了しました。とても簡単です。これで、Heroku に新しいコミットをデプロイするたびに、キャッシュの古いデータが自動的にフラッシュされ、関連するデータのテストを実行できるようになります。
MemCachier の資格情報を更新する場合は、Deploy Hooks も手動で更新する必要があります。
追加リソース
Heroku Deploy Hooks の設定についての詳細は、「Deploy Hooks」を参照してください。
MemCachier API の機能についての詳細は、完全なドキュメントを参照してください。