やりたいこと
Render.com に登録したWebアプリケーションのURLに定期アクセスして、スリープを回避したい。
ポートフォリオの掲載に、Render.com というサービスを使っています。無料プランの利用では、15 分間何も活動がないと自動でサーバーが スリープ状態になります。サーバーが再起動して再び動き出すまでには時間がかかるため、GASを初めて利用してみました。
- Render を無料プランで利用
- GASを無料プランで利用
GASとは?
Google Apps Script(GAS)は、Googleが提供するツールです。
JavaScriptでコードを記述し、サービスを自動化したり、Webアプリケーションを開発したりできます。Googleアカウントを持っていれば誰でも利用可能で、インストール作業は不要です。
GASのプロジェクトを作成
PCブラウザでGoogle Drive (https://drive.google.com/drive) を開きます。
GASのプロジェクトを作成したいフォルダに移動します。
右クリックから「新規 > その他 > Google Apps Script」を選択し、プロジェクトを新規作成します。
コード
コードを貼り付けて、タイトルを任意の名前に変更します。
function main()
{
var url = 'https://{ここにアプリケーションのURL}.onrender.com';
var data = UrlFetchApp.fetch(url).getContentText();
}
トリガーを設定
左メニューからトリガー画面を開き、任意のスケジュールを設定します。
トリガーを保存する際にエラーが表示され、こちらのサイトを参考に対処しました。
設定完了です。
左メニューから実行数の確認もできます。
補足*GAS無料プランの制限について
https://developers.google.com/apps-script/guides/services/quotas?hl=ja
無料プランでは、トリガーの合計実行時間 … 90 分/日 となっています。
今回の用途では心配なさそうです。(1回あたり数秒のスクリプト)
参考
以下サイトを参考にさせていただきました。
GASの使い方(初めて使う)
Render.comのサーバーが寝てしまうので定期的に叩き起こして寝かせないようにする
Renderのスリープ対策をGASで簡単に設定
トリガー設定のエラー対処