Version2.8.2

Version2.8.2(20100618)

リリース日: 2010年6月18日

Version2.8.1(20100205)からの変更点です。

機能追加/変更

  • iPhone に対応 (※対応OSは iPhone OS 3.0以上) [詳細]
  • コンテンツキャッシュの新たな管理機能を追加 (消費メモリの安定化) [詳細]
  • 500エラーレスポンスを任意のメッセージで出力できる設定を追加 [詳細]
  • 新たに統計情報を出力するログを追加 [詳細]
  • staticUA.xml に Willcom のデフォルト端末設定を追加

改善された機能

  • SEOサポート機能利用時にメモリリークが発生する不具合を修正 [詳細]
  • 画像キャッシュ機能の問題により、特定の条件下で誤った画像が出力される不具合を修正 [詳細]
  • インストーラ利用時の設定ファイルの文字コードを統一 [詳細]

マニュアル変更

  • 機能追加/変更に伴う設定内容を追加
  • 誤字脱字の修正

追加/変更設定一覧

Version2.8.1(20100205)からの追加/変更された設定項目の一覧です。

【start.bat/start.sh】
  • コンソールの出力をファイルへリダイレクトする設定を追加 [詳細]

【xproxy.properties】
  • statsInterval を追加 [詳細]
  • TrackerController.cacheContainer を追加 [詳細]
  • MLCacheController.cacheContainer を追加 [詳細]
  • ImageCacheController.cacheContainer を追加 [詳細]
  • FlashCacheController.cacheContainer を追加 [詳細]
  • cacheMaxCountConvert を追加 [詳細]
  • MLCacheController.refreshInterval を追加 [詳細]
  • ImageCacheController.refreshInterval を追加 [詳細]
  • FlashCacheController.refreshInterval を追加 [詳細]
  • supportsXhtmlInput のデフォルト値を“false”から“true”へ変更 [詳細]
  • supportsSpacerImg のデフォルト値を“false”から“true”へ変更 [詳細]
  • xproxyAcceptType のデフォルト値を“1”から“2”へ変更 [詳細]
  • cacheMaxCount のデフォルト値を“200”から“100”へ変更 [詳細]
  • XHTMLSupportAccessKey のデフォルト値を“false”から“true”へ変更 [詳細]

【contentsRuleDefault.xml】
  • Attribute に insertHeader_iPhone を追加

【UAGroupSetting.xml】
  • UAGroup に iPhone を追加

【staticUA.xml】
  • Willcom のデフォルト端末設定を追加

【log4j.properties】
  • log4j.logger.xproxy.stats.ReplacedCache を追加
  • log4j.logger.xproxy.stats.AccessResponse を追加

【maxClientOver.xsd】
  • ResponseHeader を追加

【internalServerError.xml】
【exception/serverError.xsd】
【insertHeaders/iphone.xml】
  • 各ファイルを新たに追加

iPhone に対応 (※対応OSは iPhone OS 3.0以上)

従来ではPC扱いとされていた iPhone に対応し、専用ヘッダを挿入することで見栄えの最適化を行います。

詳細はスマートフォン対応を参照ください。

関連:

insertHeader.xsd

iphone.xml

コンテンツキャッシュの新たな管理機能を追加 (消費メモリの安定化)

x-Servletは各コンテンツ(セッション、text/html、画像、Flashコンテンツ)をキャッシュしていますが、その処理を見直すことで消費メモリを安定化させました。

  • キャッシュ上限の見直し
    今までは各キャッシュ数が xproxy.properties で指定されていましたが、キャッシュクリーンアップ時に「いくつまで減らすか」という意味で作用しておりました。そのため、アクセス過多となった場合はクリーンアップが実行されるまで無制限にキャッシュされ、OutOfMemoryError を誘発する恐れがありました。
    今回の修正によりキャッシュの最大サイズとして作用し、指定したキャッシュ数以上は保持されなくなりました。なお、指定したキャッシュをオーバーした場合は最もアクセスのないキャッシュと入替ります。

500エラーレスポンスを任意のメッセージで出力できる設定を追加

x-Servletで内部サーバエラーが発生した際のレスポンス内容をカスタマイズできるようになりました。
今までは無条件に http ステータス 500 でレスポンスされておりましたが、ステータス200にして任意のメッセージをレスポンスするなど、運用ポリシーに則したレスポンスを定義することが可能です。

詳細は「500エラーレスポンスをカスタマイズしたい」を参照ください。

関連:

serverError.xsd

internalServerError.xml

新たに統計情報を出力するログを追加

問題発生時の問題の切り分けや、サーバサイジングの参考情報として以下の情報が出力されるようになりました。

  • x-Servletで受取ったリクエスト数および実際に返却したレスポンス数
  • セッションおよび各コンテンツのキャッシュ入替数

詳細はstats.logを参照ください。

関連:

log4j.properties

xproxy.properties

SEOサポート機能利用時にメモリリークが発生する不具合を修正

ある条件下でクローラーからアクセスがあった際のセッション情報が開放されず、メモリリークが発生するためガベージコレクションによるメモリ解放量が減少します。

この状態が長く続くとメモリ不足エラーや、JVMプロセスダウンが発生します。

    【発生条件】
  • x-Servlet Version2.8.0 以上を使用しており、xproxy.properties の useCrawlerMode を「true」で使用している。(※1)
  • クローラーからのアクセスがある。
  • x-Servletに対してリクエストが途切れることなく続いている。(※2)
  • ※1 出荷時の設定は「true」になっています。
    ※2 セッション有効時間の長さだけリクエストが全く無い状態があれば全て解放されます。

画像キャッシュ機能の問題により、特定の条件下で誤った画像が出力される不具合を修正

変換後画像をキャッシュする際にKeyが重複し、誤った画像が出力されてしまう可能性が確認されたため修正しました。

インストーラ利用時の設定ファイルの文字コードを統一

これまではインストーラで作成された設定ファイルは Unix系OSの場合は EUC-JP で出力されていましたが、Windows系OSの場合と同様に Shift_JISで出力されるようになりました。

コンソールの出力をファイルへリダイレクトする設定を追加

JVMのエラーメッセージがコンソールに表示されることがあるためエラーメッセージをファイルにリダイレクト出力するように変更しました。

ファイルはカレントディレクトリに「console.log」という名前で出力され、メッセージが出力されるたびに追記されていきます。

問題発生時にはこのファイルをサポートまでお送り頂くことで解決材料となります。

関連:

console.log

supportsXhtmlInput のデフォルト値を“false”から“true”へ変更

XHTML変換のスイッチは httpヘッダの Content-Type で行われるため変更しました。

supportsSpacerImg のデフォルト値を“false”から“true”へ変更

端末からのリクエストが減りパフォーマンスが向上するため変更しました。

xproxyAcceptType のデフォルト値を“1”から“2”へ変更

Keep-Alive を利用した方がパフォーマンスが向上するため変更しました。

cacheMaxCount のデフォルト値を“200”から“100”へ変更

キャッシュ関連の他の設定値とのバランスを見直したため変更しました。

XHTMLSupportAccessKey のデフォルト値を“false”から“true”へ変更

XHTML Basic端末に accesskey の“0#*”を出力させることが一般的になったため変更しました。

TOP