2

私のクラウドアプリケーション(Webロール)は、5000を超えるレコードをSQLAzureにアップロードします。このプロセスの合計時間は、私の開発マシンでは約15〜19分かかります。一度クラウドにデプロイして再試行すると、10〜12分後にエラーメッセージなしで失敗します。

私の推測では、Webの役割は一定期間後にタイムアウトになります。このための設定はありますか?

4

2 に答える 2

3

Webロールがタイムアウトしません。

SQL Azureがタイムアウトしたり、接続が切断されたりする可能性があります。

接続終了のいくつかの理由:

  • 100万を超えるロックを消費するセッションは終了します。
  • ログファイルのサイズが1GBを超えるトランザクションは終了します。
  • 最初または最も古いアクティブなトランザクションログシーケンス番号(LSN)からログの末尾(現在のLSN)までの距離は、ログファイルのサイズの20%を超えることはできません。
  • トランザクションが、基盤となるシステム操作に必要なリソースを20秒を超えてロックすると、トランザクションは終了します。
  • セッションが5GBを超えるtempdbスペース(= 655,360ページ)を使用すると、セッションは終了します。
  • メモリの競合がある場合、16メガバイト(MB)を超えて20秒を超えて消費するセッションは、最も古いセッションが最初に終了するなど、リソースが保持されている時間の降順で終了します。
  • データベースは、データベースの最大サイズに達すると読み取り専用になります。これが発生すると、更新または挿入を試みるトランザクションは終了します。

http://social.technet.microsoft.com/wiki/contents/articles/sql-azure-connection-management-in-sql-azure.aspx#Reasons

于 2010-12-24T12:48:20.100 に答える
0

アップロードのページを作成することをお勧めしますか?レコードセットをメモリ(キャッシュ/キュー/テーブル/ブロブストアではなく)にビルドしてからSQLに対して実行するだけの場合でも。

少なくとも、問題がどこにあるかを特定することができます。

于 2010-12-29T23:55:49.943 に答える