2016-11-08 8 views
0

私のスプレッドシートで何らかの処理を行うフォームにフォーム送信トリガーを使用します。フォームの送信プロセスが完了するまでに時間がかかることがあります(約30秒)。レスポンスがフォーム形式で送信されると、トリガーの処理時間は、Google Apps Work/Edu/Govの6時間のトリガー実行時間のクォータを超えることがあります。スクリプト制限あたりのトリガー数も20です。Google Appsスクリプトのトリガークォータと制限

これらの問題の回避策はありますか?

+0

回避策はかなり複雑です。あなたはアプリのスクリプトでかなり快適ですか? –

+0

解決策があれば試してみる必要があります。 – Amar

答えて

0

クォータの種類によって異なる場合があります。この文書には、Best Practicesというスクリプトが掲載されています。このリストは、スクリプトのパフォーマンスを向上させるのに役立ちます。

  • 他のサービスへの呼び出し
  • 使用バッチ操作
  • はUI-重いスクリプト内のライブラリ
  • また

キャッシュサービスを使用することを避け最小化、ブログを約Google Apps Scriptに関するほぼすべて語りますクォータの回避策は、遅延の追加、各機能の間隔の拡大、スクリプトの小さな部分への分割など、コードの複雑さを増やします。

これが役に立ちます。

0

私は考えることができるいくつかの方法があります。

1)バッチ処理を行うために別のサービスを使用しますが。これは、App Engine、Googleの機能、またはその他のサービスのようなものです。

2)ドメイン内のバッチ処理ユーザーアカウントを作成します。各自に6時間の制限があります。フォーム送信トリガーはリクエストを作成し、バッチ処理アカウントの1つに送信します。これらのアカウントは、スクリプトが必要とするリソースにアクセスする必要があります。

3)Google Apps Scriptの問題を開いて処理時間を延長します。具体的な情報はありませんが、非常に重いユーザーが、より長い実行時間を含むアプリスクリプトの「プロ」サポートを購入できると聞いています。

4)あなたのスクリプトを時間を節約してください。処理に30秒間が必要な理由を把握し、作業負荷を軽減できるかどうかを確認します。

+0

ファイルを共有できないので、2はオプションではありません。 Googleのクラウド機能を意味しますか?私はどのように私はアプリのスクリプトからGoogleの機能やアプリエンジンを使用することができますについての任意のドキュメントに私を指示することができます。 – Amar

+0

クラウド機能、アプリエンジン、アプリスクリプトをリンクするための文書はありません。しかし、いくつかの方法があります:UrlFetchApp、Pub/Subは私が頭の上から考えることができる2つの方法です。 –

関連する問題