今回の記事では、HQueue を使用する際に、HQueue ServerのWEBインターフェースの動作が遅くなっていく問題について、詳細と対処方法を紹介致します。
▼環境
OS: Windows 7または10 日本語版
HQueue 15.5
▼問題内容
Windows環境で、HQueue使用時に、時間の経過と共にHQueue ServerのWEBインターフェース(※)の動作が遅くなっていきます。最終的には、ジョブのステータスの確認や、ジョブの管理等も行えなくなります。
※HQueue ServerのWEBインターフェースは、ブラウザ上で「http://<HQueue Serverマシン名またはIPアドレス>:5000(デフォルトの場合)」を入力するとアクセスすることができます。そのインターフェース上で、HQueue で実行されているジョブの管理を行うためのページです。
また、HQueue Serverのエラーとして、以下のようなエラーが頻発します。
<日付> Traceback (most recent call last): File "<stdin>", line ***, in __call__ File "C:\HQueueServer\python27\lib\site-packages\pylons-0.9.7rc4-py2.7.egg\pylons\controllers\xmlrpc.py", line 132, in __call__ rpc_args, orig_method = xmlrpclib.loads(body) File "C:\HQueueServer\python27\lib\xmlrpclib.py", line 1135, in loads p.feed(data) File "C:\HQueueServer\python27\lib\xmlrpclib.py", line 557, in feed self._parser.Parse(data, 0) ExpatError: not well-formed (invalid token): line 32, column 21 <日付> Traceback (most recent call last): File "<stdin>", line ***, in __call__ File "C:\HQueueServer\python27\lib\site-packages\pylons-0.9.7rc4-py2.7.egg\pylons\controllers\xmlrpc.py", line 132, in __call__ rpc_args, orig_method = xmlrpclib.loads(body) File "C:\HQueueServer\python27\lib\xmlrpclib.py", line 1135, in loads p.feed(data) File "C:\HQueueServer\python27\lib\xmlrpclib.py", line 557, in feed self._parser.Parse(data, 0) ExpatError: not well-formed (invalid token): line 32, column 21
▼対処方法1
上記の問題が発生している場合は、HQueue ServerおよびHQueue Clientから出力されるログをすべて削除し、動作が改善するかどうかをご確認ください。
■HQueue ServerのWEBインターフェースを開くことができる場合
- HQueue ServerのWEBインターフェースをブラウザを使用して開きます。
- トップページ上部にある、 [Server Errors:]と[Client Messages:]の右側にある [Delete]をそれぞれ押して、エラーメッセージを削除してください。
■HQueue ServerのWEBインターフェースが開かない場合
- HQueue Serverのサービスを停止してください。
(Windows 10 の場合)
– HQueue Serverのマシン上で、[スタート]ボタンを右クリックし、[コンピューターの管理] > [サービスとアプリケーション] > [サービス]を開きます。その後、[HQueueServer]サービスの上で右クリックして、[停止]を選択してください。
(Windows 7 の場合)
– HQueue Serverのマシン上で、[Windows]メニューから、[コントロールパネル] > [管理ツール] > [サービス]を開きます。その後、[HQueueServer]サービスの上で右クリックして、[停止]を選択してください。
- HQueue Serverのインストール先に移動します。デフォルトの場合は、以下のフォルダへ移動してください。
C:/HQueueServer
- フォルダ内にあるerrors.logを削除して下さい。
- [HQueueServer]サービスを起動します。サービスの上で右クリックを押し、[開始]を選択してください。
- WEBインターフェースを開き、トップページ上部にある、 [Server Errors:]と[Client Messages:]の右側にある [Delete]をそれぞれ押して、エラーメッセージを削除してください。
上記の操作を行い、WEBインターフェースの接続が正常に行える場合は、WEBインターフェース内の [Server Errors:]の[View]を再度確認してください。そこで、「not well-formed」エラーが引き続き頻発している場合は、「対処方法2」をご覧下さい。
▼対処方法2
対処方法1の内容を行うことでWEBインターフェースの接続が遅くなる問題が改善し、引き続き「not well-formed」エラーが出力される場合は、時間が経過すると、エラーにより、問題が再発します。
「not well-formed」といったエラーは、英語版でないWindowsマシン上で稼働しているHQueue Clientが、非ASCII文字を含むシステムメッセージを、HQueue Serverに送信しようとした時に発生することがあります。HQueue Clientのひとつがこれらのサーバーエラーのきっかけとなっている可能性がありますので、以下の内容をお試しください。
■HQueue Clientサービスの再起動
(Windows 10 の場合)
- HQueue Clientのマシン上で、[スタート]ボタンを右クリックし、[コンピューターの管理] > [サービスとアプリケーション] > [サービス]を開きます。
- [HQueueClient]サービスの上で右クリックして、[停止]を選択してください。
- すべてのHQueue Clientのサービスを停止した状態で、HQueue ServerのWEBインターフェースから、Clientのエラーを削除してください。
- 再度、[HQueueClient]サービスの上で右クリックし、[開始]を選択してください。
(Windows 7 の場合)
- HQueue Clientのマシン上で、[Windows]メニューから、[コントロールパネル] > [管理ツール] > [サービス]を開きます。
- [HQueueClient]サービスの上で右クリックして、[停止]を選択してください。
- すべてのHQueue Clientのサービスを停止した状態で、HQueue ServerのWEBインターフェースから、Clientのエラーを削除してください。
- 再度、[HQueueClient]サービスの上で右クリックし、[開始]を選択してください。
尚、上記の操作を行った後も、引き続き問題が発生する場合は、以下の手順にてHQueue ServerとHQueue Clientのサービスを再度停止して、HQueue ServerとHQueue Clientを最新のProduction Buildへアップグレードしてください。
■HQueue ServerとHQueue Clientのアップグレード方法
- HQueue ServerサービスとすべてのHQueue Clientサービスを停止してください。
- HQueue Serverのマシン上で、最新のProduction Buildのインストーラを起動し、[Choose Component]項目で[HQueue Server]を選択してインストールしてください。その際に、HQueue Serverのアップグレード/インストールのどちらを行うかの選択肢が表示されますので、[Upgrade]を選択してください。
- 上記と同様に、すべてのHQueue Clientのマシン上で、最新のProduction Buildのインストーラを起動し、[Choose Component]項目で[HQueue Client]を選択してインストールしてください。
ご注意:手順2と手順3で使用するインストーラのバージョンは、必ず同一のものを使用してください。 - HQueue Serverのサービスを起動してください。その後、HQueue Clientのサービスを起動し、動作をご確認ください。