openshift を使用して、 cron カートリッジで時々スクリプトを実行します。ただし、私のアプリケーションには (まだ) Web アクティビティがないため、アイドル状態になり、プロセスが実行されません。
別のサービス (ページを常に取得するiftttなど) を使用して偽の Web ロードを生成する醜い解決策を考えることができますが、これは間違っているように思えます。
より良い解決策はありますか?
openshift を使用して、 cron カートリッジで時々スクリプトを実行します。ただし、私のアプリケーションには (まだ) Web アクティビティがないため、アイドル状態になり、プロセスが実行されません。
別のサービス (ページを常に取得するiftttなど) を使用して偽の Web ロードを生成する醜い解決策を考えることができますが、これは間違っているように思えます。
より良い解決策はありますか?
どうやら唯一の方法は、openshift をだましてトラフィックを発信させることです。そのためにhttps://www.site24x7.comの無料アカウントを使用しました。
OpenShift は、非アクティブ状態が 24 時間続くとアプリケーションをアイドル状態にします1が、1 時間ごとの cron ジョブをアプリに追加してアプリ自体を維持することができます。
#!/bin/bash
PATH=/bin:/usr/bin:/usr/sbin
app_url=http://$OPENSHIFT_APP_DNS/
curl --insecure --location --silent --fail "$app_url" >/dev/null
アプリがまだアイドル状態ではなく、cron ジョブを実行しないと仮定します :-)
1アイドル期間は以前は48 時間だったようですが、OpenShift の価格表によると、現在は 24 時間です。言い換えれば、毎日の pinger cron ジョブでは、それができません。
Openshift カートリッジは、非アクティブ状態が 24 時間続くとアイドル状態になります。
アクティビティは、カートリッジの外部で発生したアプリケーションで Get 要求を受信したと見なされます(そのため、独自のカートリッジからアプリに ping を実行しても機能しません)。
無料の ping サービスを使用して、特定の時間間隔 (< 24 時間) 後にアプリケーションに ping を実行できます。
Pingdomを使用できます。私はそれを使用して成功を収めました。優れたダッシュボードと応答時間のグラフも提供します. アプリへの接続に問題がある場合、またはアプリがダウンしている場合は、通知されます。モバイル アプリでアカウントを管理できます。
他にも無料のpingサービスがあります。お気軽に Google にアクセスして、他のサービスをお試しください。良いものを見つけたらコメントしてください。一部の人にとっては大きな助けになるかもしれません:-)。
ブロンズは無料です。すべてのプランは無料のものを保持します。たとえば、3 つの無料ギアなどです。3 つ以上のギアについては 0.02 時間のみ支払う必要があります。したがって、無料のティアを使用していて 3 つのギアを使用していない場合は、安全にブロンズにアップグレードして無料のままにしておく必要があります。