サーバ 構 築 ガイド Copyright (C) Open Stream,Inc. All Rights Reserved.
はじめに をご 利 用 いただき 誠 に 有 難 うございます 本 ガイドは を 利 用 したサーバ 構 築 の 方 法 や Biz/PrintServer で 構 築 し たサーバからの 移 行 について 理 解 していただくことを 目 的 として 作 成 致 しました 本 製 品 の 導 入 に 向 けて 本 ガイドが 皆 様 のお 役 に 立 つことを 心 より 願 っております 本 ガイドは を 使 った Web 帳 票 システムの 構 築 方 法 を 具 体 的 な 例 を 示 しながら 説 明 しています 本 ガイド および 付 属 のソフトウェアに 関 する 所 有 権 知 的 財 産 権 その 他 全 ての 権 利 および 権 限 は 株 式 会 社 オープンストリームが 所 有 しています 本 ガイド および 付 属 のソフトウェアは 使 用 許 諾 契 約 書 に 記 載 されている 内 容 に 反 して 使 用 または 複 製 することはできません 本 ガイドに 記 載 されている 内 容 および 付 属 のソフトウェアの 仕 様 は 将 来 予 告 なく 変 更 することがあります 付 属 のソフトウェアを 運 用 した 結 果 の 影 響 について 一 切 責 任 を 負 いかねますのでご 了 承 ください Windows は 米 国 マイクロソフト 社 の 登 録 商 標 です その 他 の 製 品 名 は 各 社 の 商 標 または 登 録 商 標 です 表 記 について 画 面 について 操 作 中 に 表 示 されている 画 面 例 は 必 要 な 部 分 のみ 載 せています ヒントについて 操 作 方 法 や 設 定 内 容 に 関 する 参 考 情 報 は ヒントマークで 表 示 します 注 意 について 特 に 注 意 が 必 要 な 情 報 については 注 意 マークで 表 示 します - 1 -
目 次 1. システム 構 成... 3 2. サーバ 環 境... 4 2.1. 最 もシンプルな 構 成... 4 2.2. Web サーバと 帳 票 サーバを 分 離 する... 5 2.3. Web サーバが 複 数 ある 場 合... 6 3. サーバ 機 能 の 実 装... 8 3.1. PDF を 生 成 する... 8 3.2. PDF 生 成 での 応 答 待 ち 状 態 を 回 避 する... 9 3.3. PSS ファイルを 使 用 したストリーミング 印 刷... 10 3.4. 印 刷 イメージファイルの 管 理... 11 4. 環 境... 12 4.1. Adobe Reader を 利 用 する 方 法... 12 4.2. PrintStream for InternetExplorer を 利 用 する 方 法... 13 4.3. Biz/Browser を 利 用 する 方 法... 14 5. Biz/PrintServer からの 移 行... 15 5.1. Biz/PrintServer との 違 い... 15 5.2. 移 行 できない 機 能... 16 5.3. 動 作 環 境 の 違 い... 16 5.4. 帳 票 設 計 ツールとフォームファイル(QFM ファイル)... 16 5.5. スプール 管 理... 16 5.6. ジョブ 管 理... 17 5.7. ログ 管 理... 17 5.8. マルチサーバ 構 成... 17-2 -
1. システム 構 成 を 利 用 した 帳 票 システムの 最 もシンプルな 構 成 を 以 下 に 示 します サーバ QFM 印 刷 データ Web アプリケーション Web アプリケーションサーバ PDF PSS PSS OS HTTP Internet Explorer PrintStream for InternetExplorer (ActiveX) Biz/Browser Internet Explorer Adobe Reader プリンタ は Web アプリケーションサーバに 直 接 組 み 込 んで 使 用 することができま す あらかじめ 配 置 した 帳 票 フォームファイル(QFM ファイル)と 印 刷 データから 印 刷 イメージファイ ル(PSS ファイル PDF ファイル)を 生 成 します 印 刷 イメージファイルはにダウンロードして プレビュー 印 刷 します PSS ファイルは 印 刷 イメージを 圧 縮 分 割 した PrintStream 独 自 形 式 のファイルです PrintStream for InternetExplorer(ActiveX)や Biz/Browser を 利 用 してプレビュー 印 刷 する ことができます は サーバに 接 続 されたプリンタに 直 接 印 刷 する サーバサイド 印 刷 は できません - 3 -
2. サーバ 環 境 帳 票 システムでは 帳 票 の 規 模 生 成 にかかる 時 間 印 刷 リクエストの 頻 度 などに 合 わせて 様 々なサーバ 環 境 が 考 えられます はシンプルなクラスライブラリであり そ れらのサーバ 環 境 に 柔 軟 に 対 応 することができます 2.1. 最 もシンプルな 構 成 単 一 のサーバ 上 で Web アプリケーションと 帳 票 システムを 同 時 に 稼 動 させます 帳 票 の 生 成 負 荷 が 低 く 負 荷 分 散 を 意 識 する 必 要 がほとんど 無 い 場 合 は この 構 成 が 最 も 簡 単 です サーバ 印 刷 データ QFM 印 刷 イメージ ファイル 呼 出 し Web アプリケーション 印 刷 リクエスト 結 果 印 刷 データ(CSV XML 等 )は Web アプリケーションで 作 成 したローカルファイルや URL で 別 の Web アプリケーションを 指 定 することができます - 4 -
2.2. Web サーバと 帳 票 サーバを 分 離 する ページ 数 が 多 い 帳 票 など 生 成 に 時 間 がかかる 場 合 帳 票 生 成 の 負 荷 がそのままサーバの 負 荷 となり Web アプリケーションにも 影 響 が 出 ます そのため 帳 票 システムを Web サーバとは 別 のサーバに 構 築 して 帳 票 生 成 の 負 荷 を 分 散 する 必 要 があります 帳 票 サーバ QFM 呼 出 し 印 刷 イメージ ファイル 帳 票 用 Web アプリケーション Web サーバ Web アプリケーション 印 刷 リクエスト 印 刷 データ 印 刷 リクエスト 結 果 上 図 の 方 法 以 外 に から 帳 票 サーバに 直 接 リクエストを 出 す 方 法 や 帳 票 サ ーバをから 隠 して すべて Web サーバが 中 継 する 方 法 も 考 えられます - 5 -
2.3. Web サーバが 複 数 ある 場 合 既 に Web サーバに 対 する 負 荷 分 散 の 構 成 があり 複 数 の Web サーバが 稼 動 している 場 合 は 以 下 の2つの 実 装 が 考 えられます 1. 全 ての Web サーバに を 導 入 する Web サーバ Web アプリケーション Web サーバ Web アプリケーション ロードバランサ 利 点 ハードウェア 構 成 がシンプル 印 刷 処 理 の 負 荷 分 散 も 実 現 できる 欠 点 が Web サーバの 台 数 分 必 要 になる さらに 負 荷 を 分 散 するため Webサーバごとに 帳 票 サーバを1 対 1で 用 意 し すべての 帳 票 サーバに を 導 入 することもできます - 6 -
2. 帳 票 サーバを 別 に 構 築 する 帳 票 サーバ 帳 票 用 Web アプリケーション Web サーバ Web アプリケーション Web サーバ Web アプリケーション ロードバランサ 利 点 は1 台 の 導 入 のみ 欠 点 印 刷 処 理 に 負 荷 が 集 中 する 帳 票 サーバを 複 数 用 意 して Web サーバと 同 様 にロードバランサで 負 荷 分 散 することも 可 能 です - 7 -
3. サーバ 機 能 の 実 装 サーバ 側 の 帳 票 生 成 機 能 の 実 装 は 帳 票 の 種 類 (PDF PSS) 生 成 にかかる 時 間 などにより 幾 つかの 方 法 が 考 えられます 3.1. PDF を 生 成 する ページ 数 が 少 なく 生 成 時 間 の 短 い PDF の 場 合 は リクエストを 受 けた Web アプリケーションの スレッドから 直 接 を 呼 び 出 す 方 法 が 簡 単 です サーバ PDF 生 成 PDF 直 接 呼 出 し Web アプリケーション リクエスト レスポンス Web アプリケーションプログラムは の 処 理 が 完 了 次 第 生 成 された PDF ファイルをそのままレスポンスに 返 します PDF のへのレスポンスは PDF ファイルを Web サーバで 公 開 して に 見 せる 方 法 や PDF ファイルをバイナリで 開 いて Web アプリケーションのレスポンスに 直 接 返 す 方 法 (Content-Type=application/pdf)があります - 8 -
3.2. PDF 生 成 での 応 答 待 ち 状 態 を 回 避 する ページ 数 が 多 く 生 成 に 時 間 がかかる PDF の 場 合 前 述 の 方 法 ではは 長 時 間 の 応 答 待 ちになってしまいます これを 回 避 するためには の 呼 び 出 しを Web ア プリケーションとは 別 のスレッドで 行 います サーバ スレッド 起 動 PDF 生 成 PDF 別 スレッドを 起 動 起 動 用 Web アプリケーション PDF 取 得 用 Web アプリケーション リクエスト レスポンス リクエスト レスポンス リクエストを 受 けた Web アプリケーションは 帳 票 生 成 用 の 別 スレッドを 起 動 し すぐにレスポンス を 返 します は PDF が 完 成 した 段 階 で 再 度 リクエストを 発 行 し PDF を 取 得 表 示 します 最 初 のレスポンスを HTML で 返 す 場 合 HTML の meta タグを 使 用 して 一 定 時 間 後 に PDF を 取 得 する 方 法 が 便 利 です <meta http-equiv="refresh" content="5;url=xxx.pdf"> - 9 -
3.3. PSS ファイルを 使 用 したストリーミング 印 刷 PSS ファイルを 利 用 する 場 合 は 印 刷 イメージの 生 成 が 最 後 のページまで 完 了 する 前 にクライア ントにレスポンスを 返 すことができます サーバ スレッド 起 動 PSS 生 成 PSS PSS 別 スレッドを 起 動 起 動 用 Web アプリケーション リクエスト レスポンス PSS を 順 次 ダウンロード Web アプリケーションからのレスポンスを 受 けたは サーバ 側 で 順 次 作 成 される PSS ファイルをダウンロードします PSS ファイルは 印 刷 イメージ 全 体 を 一 定 のファイルサイズに 圧 縮 分 割 した 複 数 のファイ ルで 構 成 されています ファイル 単 位 でにダウンロードし 先 行 してプレビュー を 表 示 することができます PSS ファイルは PrintStream for InternetExplorer(ActiveX)または Biz/Browser 上 でのみ 利 用 可 能 です PSS ファイルの 生 成 を Servlet と 同 じスレッドで 行 うと 印 刷 イメージ 生 成 が 完 了 するまでレ スポンスが 返 せないので ストリーミング 印 刷 になりません - 10 -
3.4. 印 刷 イメージファイルの 管 理 は 印 刷 イメージをファイルとして 生 成 します 印 刷 イメージファイルは 指 定 されたスプールディレクトリ 内 に 作 成 されます 複 数 のユーザからの 同 時 にリクエストがある 場 合 は 印 刷 イメージファイルの 競 合 を 避 けるため リクエストごとにスプールディレクトリを 生 成 する 必 要 があります 印 刷 リクエスト 印 刷 リクエスト PDF 上 書 き スプールディレクトリ 印 刷 リクエスト 印 刷 リクエスト PDF PDF スプールディレクトリ A スプールディレクトリ B この 方 法 は スプールディレクトリはリクエスト 単 位 に 作 成 されるため そのままではディスク 容 量 を 圧 迫 してしまいます 一 定 期 間 で 削 除 するなどの 管 理 機 能 が 必 要 になります スプールディレクトリの 名 前 には 一 意 のテンポラリ 名 を 付 ける 方 法 や 日 付 時 刻 から 名 前 を 作 成 する 方 法 があります - 11 -
4. 環 境 生 成 された 印 刷 イメージをプレビュー 印 刷 するには 以 下 の3つがあります Adobe Reader PrintStream for InternetExplorer(ActiveX) Biz/Browser InternetExplorer を 利 用 した 一 般 的 な Web アプリケーションでは PrintStream for InternetExplorer や Adobe Reader を 利 用 します Biz/Browser を 利 用 したリッチアプリケーションでの 帳 票 生 成 機 能 として 利 用 すること もできます 4.1. Adobe Reader を 利 用 する 方 法 印 刷 イメージを PDF ファイルにした 場 合 は Adobe Reader でのプレビューが 一 般 的 です には Adobe Reader がインストールされている 必 要 があります IE リクエスト Adobe Reader PDF PDF Web サーバ Acrobat Reader5.0 以 上 Adobe Reader6.0 以 上 の 環 境 に 対 応 しています - 12 -
4.2. PrintStream for InternetExplorer を 利 用 する 方 法 印 刷 イメージを PSS ファイルにした 場 合 に 利 用 できます PrintStream for InternetExplorer は ActiveX モジュールとして InternetExplorer 内 で 動 作 します 起 動 用 の HTML をサーバからに 送 ることで 起 動 することができます 起 動 用 HTML サンプル <html><body> <object id="printstm" width="100%" height="100%" classid="clsid:1975c4f7-69ff-11d4-a96a-00d0b78fccc0" codebase="printstream.ocx#version=2.1.3.1"></object> <script language="javascript"><!-- PrintStm.LayOut = 1; PrintStm.Ext = ".pss"; PrintStm.Download = "http://" + location.host + "/spool/001/"; --></script> </body></html> HTML 内 に PSS ファイルのダウンロード 元 URL を 指 定 することで 自 動 的 に PSS ファイルを ダウンロードしてプレビューします IE リクエスト PrintStream for IE 起 動 用 HTML 内 部 通 信 PSS PSS Web サーバ 詳 細 は PrintStream オンラインマニュアルの PrintStream for InternetExplorer をご 参 照 く ださい - 13 -
4.3. Biz/Browser を 利 用 する 方 法 印 刷 イメージを PSS ファイルにした 場 合 に 利 用 できます Biz/Browser に 標 準 搭 載 さ れ て い る PrintStream パ ッ ケ ー ジ を 利 用 す る こ と で PrintStream for InternetExplorer と 同 様 のプレビューを 表 示 することができます 詳 細 は Biz/Browser オンラインマニュアルをご 参 照 ください - 14 -
5. Biz/PrintServer からの 移 行 5.1. Biz/PrintServer との 違 い Biz/PrintServer には ジョブ 管 理 スプール 管 理 など 帳 票 サーバを 管 理 するための 機 能 があ り ま す 実 際 に 印 刷 イ メ ー ジ を 生 成 す る 機 能 は 印 刷 モ ジ ュ ー ル が 持 っ て お り Biz/PrintServer は 印 刷 モジュールを 起 動 することで 印 刷 イメージを 生 成 します は この 印 刷 モジュール 部 分 の 機 能 を 抽 出 して 再 構 築 した 製 品 です その ため Biz/PrintServer のようなサーバ 管 理 機 能 は 持 っていません Biz/PrintServer 起 動 印 刷 モジュール 印 刷 イメージ ファイル Biz/PrintServer API 印 刷 リクエスト 結 果 Web アプリケーションサーバ - 15 -
5.2. 移 行 できない 機 能 Biz/PrintServer の 持 つ 機 能 のうち 以 下 の 機 能 については では 実 現 でき ません DocumentGenerator HTML DocumentGenerator XL ESC/P コマンドによるドットインパクトプリンタへの 印 刷 サーバに 接 続 されたプリンタへの 直 接 印 刷 (サーバサイド 印 刷 ) 5.3. 動 作 環 境 の 違 い Biz/PrintServer は Windows サーバのみで 動 作 します は Java の 動 作 する 環 境 であれば OS に 関 係 なく 動 作 します 以 前 は Web サーバや DB サーバを Linux で 構 築 していた 場 合 でも Biz/PrintServer は Windows サーバとなり サーバ 構 成 が 複 雑 になっていましたが によりサー バ 構 成 をシンプルにすることが 可 能 になりました 5.4. 帳 票 設 計 ツールとフォームファイル(QFM ファイル) 帳 票 設 計 ツール FormEditor は 同 様 に 利 用 可 能 です また Biz/PrintServer で 使 用 してい た 帳 票 フォームファイル(QFM ファイル)は そのまま 利 用 できます 5.5. スプール 管 理 Biz/PrintServer は 印 刷 イメージファイルの 出 力 フォルダを 自 動 的 に 生 成 し 一 定 期 間 後 に 削 除 する 機 能 があります では 出 力 フォルダのパスを 指 定 することで 印 刷 イメージファイルの 出 力 先 を 変 更 できるので Web アプリケーション 側 のプログラムで 出 力 フォルダを 管 理 してください - 16 -
5.6. ジョブ 管 理 Biz/PrintServer は API を 介 して 他 のサーバからの 印 刷 リクエストを 受 け 印 刷 モジュールの 同 時 起 動 数 の 管 理 などを 行 います は プログラムから 直 接 呼 び 出 すことができるので 印 刷 リクエストの 処 理 は 比 較 的 簡 単 に 実 現 できます 帳 票 生 成 の 負 荷 印 刷 リクエストの 頻 度 などを 考 慮 した 上 で Web アプリケーション 全 体 でのジョブ 管 理 をしてください 5.7. ログ 管 理 Biz/PrintServer は 起 動 / 停 止 印 刷 リクエスト エラーの 発 生 などのログがファイルに 出 力 さ れます は エラーが 発 生 すると 例 外 がスローされ 原 因 を 知 ることができるので Web アプリケーション 自 体 のログ 管 理 の 中 に 含 めることができます 5.8. マルチサーバ 構 成 Biz/PrintServer には サーバサイド 印 刷 における 印 刷 負 荷 を 分 散 するための 機 能 があります は Web アプリケーションの 一 部 として 動 作 するため Web システム 全 体 で のサーバ 負 荷 分 散 の 仕 組 みを 検 討 してください - 17 -
サーバ 構 築 ガイド 2015 年 3 月 2 日 版 発 行 : 株 式 会 社 オープンストリーム 問 い 合 わせ 先 : サポート 係 biz-qa@opst.co.jp - 18 -