0

SQL Server 2005 をオンにして Windows 2003 を実行し、約 85 ~ 90 個のジョブを 1 時間に 1 回 (異なる時間に) 実行し、サーバーでホストされている各 Web サイトの新しいサイトマップを非公開ページと共に生成します。

私がサーバーで抱えている問題は、サーバーが 3 段階で実行されているように見え、ジョブが毎日午前 8 時から午後 6 時の間に実行され、サーバーが毎朝 2 時から 3 時頃に再起動されることです。

ジョブが朝に開始されると、約 90 分間 (午前 9 時 30 分) 正常に実行され、ジョブが完了するまでに約 3 ~ 5 秒かかります。

9.30 以降、ジョブは正しく開始されますが、実行が停止します (CPU を 100% 使用)。

ジョブを手動で停止すると、サーバーは正常に戻りますが、ジョブはまったく実行されず、以下のエラーがスローされます。(数か月前に 15 分ごとではなく、60 分ごとに実行されるように変更されましたが、名前は変更されていません)

Step ID     1
Server      [Server Name]
Job Name        Execute Replicate File For [website] web
Step Name       Vbscript for Replicate File  every 15Minutes
Duration        00:00:00
Sql Severity        0
Sql Message ID      0
Operator Emailed        
Operator Net sent       
Operator Paged      
Retries Attempted       0

Message
Executed as user: [Domain]\[User]. The step did not generate any output. 
The step failed.

実行中のスクリプトに関する情報: VBScript です

Dim IEObj 
Set IEObj=CreateObject("InternetExplorer.Application")
IEObj.Navigate "[weblink]/ReplicateFile.asp"
IEObj.visible=false
do Until IEObj.ReadyState=4
loop
IEObj.quit
Set IEObj=Nothing

@mellamokb - スクリプトは一般設定で T-SQL スクリプトではなく ActiveX スクリプトとしてダウンしているため、エラーの出力ファイルを指定できません。

注: このサーバーまたはサーバーが複製している CMS には何もセットアップしていません。また、データベースに関する知識もほとんどありません。

4

1 に答える 1

0

私の推測では、ブラウザに表示されているページ [weblink]/ReplicateFile.asp で、少なくとも 1 つのセッションでエラーが発生しています。

コード

do Until IEObj.ReadyState=4
loop

実行中にかなりの CPU 使用率が発生します。さらに重要なことは、ブラウザーが ReadyState 4 に到達しない場合、このコードは永遠に実行され続けることです。これらのうちの 3 つのうち 2 つがスタックすると、サーバーの CPU 使用率が 100% になります。

于 2012-04-04T12:46:47.883 に答える