Session変数の無駄遣い
既存プログラムを元に新規プログラムを作っているわけですが,解析した結果,とんでもない処理をしているんですね。当記事のタイトルにもあるとおり,Session変数の無駄遣いです。
帳票を出力する際,データベースからデータを抽出し,そのデータを基にXMLを作成しているのですが,なんとそのXMLのソースがファイルではなくてSession変数,つまりはサーバー上のメモリに展開しているのです。
メモリ上なのでプログラムが終了すれば跡形も無く消えるわけで,デバッグを難しくしている。
Session変数は,接続するクライアント毎に設定されるわけで,接続するクライアント数が多ければ多いほどSession変数も増える。
クライアントが少なければそれほどサーバーの負荷とはならないけど,エンドユーザーの環境はWebサーバーに各クライアント端末が接続して作業を行うわけで,クライアント端末は10台以上です。
サーバー側もラックマウントのサーバーですけど,積んでいるメモリにも限界があるだろうし,何故こんなつくりにしたんだろうかとつくづく疑問に思う。
せめてHDDにファイルを作成し,それを帳票側プログラムで読み込むとかすればよいものを。
先に投稿した記事にもあるけど,1プロシージャが3,000行もあるなんて異常だし,いったい誰がこんなつくりにしようと決定したのだろう。作った人の脳を見てみたい。
作り直したいけどそうはいかず,インターフェースは保持したまま行うしかない。
コメント
コメント一覧 (2)
既存PGの改修というのは、
個人的には一番やりたくない仕事ですね(笑)
どうしても自分がPGあがりなモノで、
やはりクリエイティブな仕事の方が
モチベーションが上がります
まぁ選り好みをしている場合ではありませんが…
既存PGを見ていると、作成者はやはり
『何も考えていない』のではないかと
感じることが多々あります
今回のぴろたんさんのお仕事も、
おそらくそうなのではないでしょうか?
後々のメンテの事など一切考えられずに作られた
モノ(PGに限らず)を触るのは本当に大変です…
既存PGの改修,とても面倒。
しばらくは定時で退社できそうに無いです・・・・・・・・。