ColdFusion 2018 とApacheの環境で長時間リクエストでエラーが発生する

ColdFusion 2018とApacheとを接続した一部の環境で、処理に時間のかかる.cfmページのリクエスト処理中に、Webサーバーからの応答が途切れてブラウザに応答が戻ってこない(.cfmページの処理は正常に完了します)問題が確認されています。


↑ブラウザの「ページ読み込みエラー」の例(ブラウザによって表示が異なります)

この問題は、ColdFusion 2018のApacheコネクタに追加された「Performance Monitoring Toolsetのプロパティ」の『ハートビート間隔(秒)』 が原因で発生しています。

「Performance Monitoring Toolset」はColdFusion 2018から新たに追加されたパフォーマンス測定用のツールですが、そのツールを使用している・いないに関わらずハートビートが機能します。指定された間隔でハートビート機能が実行される際、ColdFusionで処理中のリクエストがあった際、Apache(コネクタ)でエラーが生じてそのプロセスがクラッシュを招きます。その際、Apache のerror_log には、「AH00051: child pid XXXXX exit signal Segmentation fault (11)」のようなエラーが発生します。

この問題は、既に開発元でも認識し、また、下記のユーザーからの不具合登録も既に行われておりますが、記事作成時点で公開されているアップデータでは、まだ修正は行われておりません。
https://tracker.adobe.com/#/view/CF-4204033

そのため、回避方法として、ハートビートの送信を無効にするように、設定を変更してください。

  • GUIモードで新たにコネクタを登録する場合
    1. Webサーバー設定ツール(wsconfig)を起動して、[追加...]ボタンを押します
    2. 「Webサーバー設定の追加」ダイヤログが表示されますので、「Performance Monitoring Toolsetのプロパティ」の『ハートビート間隔(秒)』 にを指定してください
    3. [OK]ボタンを押し、コネクタが登録されたことを確認してください
       
  • コマンドモードでコネクタを登録する場合、既に登録済みのコネクタの設定を変更する場合
    • Webサーバー設定ツール(wsconfig)では、『ハートビート間隔(秒)』の設定を行うことができません。そのため、一旦コネクタを登録したあと、設定ファイルを手動で変更してください
    1. ColdFusion とApache とを接続した際に作成されるworkers.properties ファイルをvi エディタ等で開きます。
      • workers.properties ファイルは、Webサーバー(Apache)の設定ディレクトリ(confフォルダ)に作成されます(例:/etc/httpd/conf/workers.properties)
         
    2. 以下の設定を変更します
       【変更前】
         heartbeat_interval=30
          ↓
       【変更後の例】
         heartbeat_interval=0
      • heartbeat_interval=0 と heartbeat_limit=90 をコメントアウト(# を付ける)方法でも回避が可能です
         
    3. ColdFusion 側でリクエストの処理が行われていない事を確認した上で、Apacheを再起動し
      て下さい
      • ColdFusion は再起動しなくても大丈夫です

 

【注意】
workers.propertiesファイルは、新しいUpdateでコネクタの再設定(一旦コネクタを削除して、再度コネクタを登録した時など)を行った場合には設定が初期化されてしまいますので、その時点で本問題が修正されていない時は、再度上記の設定を行ってください。

※「Performance Monitoring Toolset」を使用していない場合は、上記のパラメーターを変更しても動作に影響はございません。また、「Performance Monitoring Toolset」を使用されている場合は、コネクタ(Web サーバー)からのパフォーマンス情報が送信されなくなる制限が生じますが、それ以外の測定には問題はなく、またColdFusionに影響もございません。

 


記事公開日:2019年11月20日
最終更新日:2019年11月22日

 


x

Sample Modal Window

This is just a sample…

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Praesent suscipit iaculis libero sed tristique. Quisque mollis dolor non tellus placerat vitae sodales lectus porta. Curabitur ut suscipit tellus. Maecenas rhoncus, ante vitae vehicula vestibulum, metus sapien dapibus tellus, et mattis dolor neque vitae nisl. Nullam eleifend ultrices ipsum eget pretium. Curabitur semper metus ut ante adipiscing nec volutpat sem rutrum. Nullam a nisi lacus, non interdum ante. Vivamus ante augue, commodo vel egestas sed, pharetra nec dui. Quisque sed tellus felis. Donec ipsum mauris, sagittis eu accumsan in, aliquam non ipsum.

Vestibulum tempor nunc nec felis scelerisque eget elementum erat dignissim. Ut vel ipsum mollis orci venenatis luctus. Aenean vehicula quam vel quam porttitor ac iaculis elit pulvinar. Proin consequat, ipsum eu venenatis semper, justo turpis posuere tortor, ac placerat metus nisl et lectus. Nulla cursus dui id nunc ullamcorper sed semper nisl lobortis. Aliquam erat volutpat. Phasellus arcu ante, imperdiet in ornare sed, laoreet eu massa.