1

これに対する答えが見つからなかったので、どんな助けも大歓迎です。Azure でスケジュールされたタスクの 1 つで大規模なレポートの作成が実行されますが、スケジューラが 30 秒後にタイムアウト エラーをスローし、さらに 5 回再試行するため、タイムアウトになります。データベースが非常に大きく、スクリプトが完了するまでに約 7 分かかります。ポータルを使用してタイムアウトを増やす方法や再試行をキャンセルする方法について何か提案はありますか?

アクションの再試行ポリシーに次を追加することを誰かが提案しましたが、十分な説明がありませんでした:

  

 "retryPolicy":
    {
     "retryType": "none"
     }
4

2 に答える 2

0

C# では、JobAction で RetryPolicy を指定できます。以下でこれをよりよく説明するのを見てみましょう...

資格情報、クラウド サービス (PaaS のように他のクラウド サービスと混同しないでください)、およびジョブ コレクションが用意されていると仮定すると、SchedulerClient を作成します...

SchedulerClient mySchedClient = new SchedulerClient(
          cloudServiceName: myCloudServiceName,
          jobCollectionName: myJobCollectionName,
          credentials: myCertCloudCredentials);

次のステップは、CreateOrUpdate を呼び出すことです。パラメーター内で RetryPolicy を指定できます。例として、httpジョブを次に示します...

JobCreateOrUpdateResponse jobCreateResponse = mySchedClient.Jobs.CreateOrUpdate(
    jobId: SomeNameForTheJob,
    parameters: new JobCreateOrUpdateParameters
       {
          Action = new JobAction
             {
                Type = JobActionType.Http,
                RetryPolicy = new RetryPolicy(RetryType.None),
                Request = new JobHttpRequest
                   {
                      Uri = new Uri("http://www.cnn.com"), 
                      Method = "GET"
                   }
             }
       });
于 2015-07-29T05:08:39.363 に答える
0

Azure のスケジュールされたジョブのタイムアウトを増やす方法はありません。不幸にも; うまくいけば、すぐに追加されます。

于 2017-04-19T15:17:15.143 に答える