« フレームワークの落とし穴 | トップページ | 東証システム障害 »

2005.10.31

パフォーマンスに鈍感な作り方

ナローバンドのことを知らない国でナローバンドの国のシステムを作ったりなんかして、パフォーマンスに鈍感な作り方をしてしまった例。
「かっしいさん、この画面えらく遅いんだけど原因分かる?」
別プロジェクトのユーザーさんから突如質問あり。
「いやーウェブ苦手なんっすよね~」
とかなんとかいいながら画面遷移を見せてもらう。

……遅い。
検索結果画面からメニューへ戻るだけの動作が数十秒かかるってどういうことですかっ!!!
「LANで実行すると数秒なんだけどねえ」
とのことであったが、それにしてもこりゃひどい。内部ロジックを見る前に、まずプレゼンテーション層のできを疑ってみることに。
ソースを見てみると一瞬で嫌な予感が。
んー、検索結果フォームをsubmitしてるみたいだなあ……えっ?
想像するにすべてのボタンがtype="submit"になっており、それは画面遷移のためだけのボタンも例外ではなく。
検索結果も再検索等がしやすいように、すべての行とカラムについてhiddenで値が指定されてるじゃん。
そりゃー遅くもなりますよ、コレ。

これも先日書いたのと同じフレームワークを使っているんだけども、これは実装側に想像力がなさすぎとしか思えないですよ、実際。
セキュリティーコントロールがあるから、ある程度の引数をもって、メニューに戻るような処理をすることは理解出来るんだが、再利用の予定のない大量のhidden項目を再度postするのはちょっと常識を疑う。
内心の動揺を抑えつつそんなことを説明して数日後、無事に数秒で返るようにシステムは変っていましたよ、ええ。

|

« フレームワークの落とし穴 | トップページ | 東証システム障害 »

コメント

コメントを書く



(ウェブ上には掲載しません)




トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/2022/6776863

この記事へのトラックバック一覧です: パフォーマンスに鈍感な作り方:

« フレームワークの落とし穴 | トップページ | 東証システム障害 »