2011-01-04 9 views
1

XSLを使用してFilemakerデータベースからデータを読み込んで、単純なクエリを実行するASPフロントエンドがあります。問題は、最初のページの読み込みに20秒+/- 200msかかる場合、最初の要求の1分以内に次の数ページのリフレッシュが<になり、サイクルが再び開始されることです。Filemaker XSL 20secクエリの待ち時間

各ページの読み込みは2つのXSLクエリを作成し、最初のページが読み込まれた後に高速で実行されるため、最初のページの読み込みに何が発生していますか?キャッシュを100%のヒット率と100の接続数で表示しました。私は、XSLデータベースセッションのオンとオフ、およびセッション時間を変更なしで1〜60分の間で試しました。

ASPからのXSLロードは、GET要求を使用し、毎回認証するためにBasic Authorizationヘッダーを追加します。高速ページ要求時に

は、fmserver.exefmswpc.exeプロセスにも尻込みしていませんが、20秒ホールドアップ時に私はfmserverジャンプ30%のCPUと3メガバイトのI/Oが要求に数秒を読んで見て、時折fmswpc CPUの60%にジャンプします。

+0

私は、毎回スタイルシートを解析するのではなく、サービスのように実行されるプリコンパイルされたトランスフォーメーションが必要だと思います(キャッシュメカニズムには改善の余地があります) –

+0

問題はスタイルシートの解析時間ではありませんいくつかのページの読み込みが許容時間(200ms)で実行されるためです。問題は、最初にスタイルシートを作成する際のレイテンシです(つまり、返されたXMLを表示するためにスタイルシートのURLをロードしようとすると、まだ20秒遅れます)。 –

+0

おそらく、ASPフレームワークに何らかの最適化があり、それは私が書いたことです:コンパイルされたスタイルシートをメモリに保存して再利用できるようにします。もちろん、自動最適化はメモリリークの最適化のために永遠に続くことはできません。この明快さを宣言する方法があるはずです。 –

答えて

0

何らかの理由で、遅れを引き起こしたのはAuthorizationヘッダーでした。ゲストアカウントにフルアクセス権を与えてそのヘッダーを削除した場合、すべてのリクエストは高速でした。 Go figure。

+0

許可されたアカウント(ゲストではない)でアクセスしていたときに、その特権セットにレコードレベルの特権を制限するカスタム計算が設定されていましたか?潜在的に速度の問題を引き起こす可能性があります。 –

+0

いいえ、読み書き権限を持つ標準アカウントを使用していました。問題は、返された行が、認証も必要とする外部ファイルのフィールドを参照していたが、使用された認証が渡されていないことが原因である可能性があります。 –

1

同じマシン上のFileMakerサーバーにアクセスする場合は、必ず「localhost」の代わりに「127.0.0.1」を使用してください。

関連する問題