JavaでPDF帳票を出力するのに過負荷がかかりすぎたためか10人程度が同時アクセスしただけで、

サーバーがダウンしてしまいます。
サーバーダウンの原因は、
どのようなものが考えられますでしょうか。

諸般の理由によりサーバー機が長時間さわれないため、できるだけあたりをつけて行きたいと考えてます。

構成は、以下のようになっています。
Windows2003Server IIS
TOMCAT COCOON oracle9i
サーバーダウンといっても、IISとTOMCATが停止してしまう状態を指します。

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:
  • 終了:2006/04/18 17:45:02
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

回答4件)

id:ma-kanoh No.1

回答回数155ベストアンサー獲得回数4

ポイント23pt

http://www.adobe.co.jp/products/server/main.html

ほとんどダミーですが。

要するに考えられるサーバーダウンの原因は

CPU数不足。

です。ちなみに、まんまcocoonでPDF出力しているのでしょうか。

通常PDFの処理はむちゃくちゃCPUを食います。

PDF生成はメモリも使いますが、PDFそのもののデータ構造が複雑なのでCPU処理負荷が多いはずです。

excel生成なんぞとは「もの」が違います。

10人同時なら、CPUが10個必要です。もちろん、PDF生成の実装

によって各社工夫しているので、全部が全部そうなってはいません

(製品では、そんなには負荷がないのが普通です。当然ですが)

ということでサーバのCPU数が問題です。予想ですが、もしかしてCPU1つとか。。。4つぐらいじゃ足らないと思います。

しかもcocoonってシステム内作ですか。

性能評価はどうしたのでしょうか。PDFのサーバ生成では

性能評価は必須なのですが。

しかもtomcatですか、、、ふつーにAPサーバ買ったほうが安上がりだと思いますがね。サーバ機なら。

とはいえ、PDF生成機能つきだと、見積もると1千万超えるな、きっと。

id:pinkymonk

ご説明不足でしたが、今回のシステム導入は、元々TOMCATとCOCOONを使った構成のサーバーへの追加機能だったので、それに準じて開発を行いました。

APサーバーは、結局各社がSTRUTSやTOMCATをラッピングして機能付け加えの製品が多いので、なかなか小規模開発には選択肢に上ってこないんですよね。。。

なるほど、CPU数ですか。たしかCPUは4つだったと思いますが、CPU不足すると、どういう現象がおきるのでしょう。

2006/04/13 11:09:48
id:kemeko0809 No.2

回答回数338ベストアンサー獲得回数23

ポイント23pt

http://www.google.co.jp

OSやDBのCALが足りないだけだったりしませんか?

id:pinkymonk

調べてみます。

2006/04/13 11:11:36
id:ma-kanoh No.3

回答回数155ベストアンサー獲得回数4

ポイント22pt

http://www.cosminexus.com/

たしかにtomcatをラッピングしているのは確かですが、

性能能力不足が起きてるなら、むしろ変えるほうが正しいのでは。。。

ちなみにCPU不足だと、論理的にはサーバの処理が「ぴたっ」

と止まるはずですが。でTCPコネクションが切れる、と。

ブラウザには「接続できませんでした」と出るはずです。

id:pinkymonk

なるほどです。

ありがとうございます。

2006/04/17 17:08:50
id:ikg No.4

回答回数4ベストアンサー獲得回数0

ポイント22pt

http://www.hatena.ne.jp/

URLはダミーです。

おそらく既に確認済みで違うのだとは思いますが、

Tomcatがメモリ不足に陥っているのでは?

OutOfMemoryErrorが出ているとか。

PDF出力で有償ミドルウェアを使っていないとなると、

メモリもかなり使うはずです。

id:pinkymonk

ありがとうございます。

おっしゃるとおり、メモリの消費がすごいです。

OutOfMemoryErrorに関しては、TOMCAT起動引数でメモリを調整して論理的には100件まで耐えうる形になってますので大丈夫だと思うのですが。。

2006/04/17 17:10:54

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません