3/19(Fri)
/** 地雷に次ぐ地雷 */ コネクションプーリングなお話。 JRun4のコネクションプーリング実装は、 二つのコネクションを同時に開いて、一方を閉じると、 もう一方も閉じてしまうという不具合あるので(最新版は確認してませんが)、 OracleのJDBCドライバに入ってるコネクションプーリング実装は、 メモリリークを起こして、最終的にORA-04031を引き起こすという不具合があるらしいです。 そもそも、OracleのJDBCドライバには、 適切な(?)ファイナライザが実装されていないらしく、 Connectionにしても、Statementにしても、ResultSetにしても、 closeし忘れるとメモリリークが起こるという不具合というか仕様があるらしいです。 でもって、Oracleのコネクションプーリング実装でclose忘れされた日には、 どうにも開放する手段がなく、メモリリークしてしまいます。 その辺りを確かめるべく、 Jakarta Commons DBCPも交えつつ、 色々実験してました。 すると、 ・OracleのJDBCドライバをそのまま使用 → 高負荷時にConnectionを取得できないことがあるが、メモリリークはなし。 ・OracleのJDBCドライバのプーリングを使用 → 高負荷時にConnectionを取得できないことがあり、メモリリークもある。 ・Commons DBCP&OracleのJDBCドライバを使用 → 高負荷時もConnectionを取得でき、メモリリークはなし。 (ただし、必要最小限のメモリは使用していると思われる。) という結果が得られました。 というわけで、 OracleのJDBCドライバに入ってるコネクションプーリング実装は、 「百害あって一利なし」 ということが判明しました。 ちなみに、高負荷時ってのは、 1000スレッドから、「select 1 from dual」みたいなつまらないSQLを投げた状態 を指すのですが、せいぜいその程度のスループットしか得られないのなら、 小規模サイトはともかく、大規模サイト構築には違ったノウハウが必要になりそうですね。 たまたまWEB+DB PRESSを読んでて、 参照数が多く、多少古いデータを見せても問題ない場合は、 静的コンテンツを利用するのも一つの手である。 っていうのを見つけたんですが、 こういうのも、ノウハウなんでしょうねぇ。 /** がーん(ToT) */ これまたWEB+DB PRESSを読んでて見つけたんですが、 JMeterでセッション維持って出来るらしいですね。 それできないと思って、HttpLoadとか作ったんですが、 なんかもう要らないような気がしてならないです。 最近、こんなのも無償公開されましたし、 (たまたま見つけた日本語解説ページ) 自分以外の誰にも役に立たず、ひっそり片隅に追いやられる予感がします(^^; まあ、自分の知識の増強には、当然役立ってますが(^^; /** お?いつの間に!? */ 上でJRun使えねぇ(T_T) とか書いときつつ、今確認してみたら、 いつの間にアップデータ3(パッチとかサービスパックと同列)とかいうのが出てました。 つい先週のことらしいです。 ざっと見た感じ、相変わらずWebサーバとの連携に問題があるみたいですが、 よっぽど作りが悪いんでしょうかねぇ。 うちで使ってる、HP版Apacheとの相性は、アップデータ2をあててから良くなりましたが。 それと、JDBCのバグはやっぱり直ってないらしい? ヒマがあったら試してみるかもです。3/18(Thu)
/** あと2週間 */ > 相変わらず、次に何やるかはさっぱりワカラン(T_T) とか書いてたら、今日ウワサを聞きつけました。 が、やっぱりどこに行くか決まってないというウワサでした。。。 /** AccessオブジェクトをExcelに吐き出す */ 今日は、Access2000のシステム改修なんかをやってたんですが、 Access2000のテーブルとかクエリをExcel2000に吐き出すのって、 意外と大変なことが分かりました。 マクロのアクションに「出力」ってのがあって、 テーブルとかクエリを、Excelやら、RTFやら、HTMLなんかに変換してくれます。 ちなみに、ASP(Active Server Pages)に変換できる機能ってのがあって、 データベース接続のコードから、テーブル(TABLEタグ)を動的に作るところまでの処理を含んだ aspファイルを自動生成してくれるみたいです。 (もはや廃れてるというウワサもありますが。。。) この「出力」アクションを使ってExcelファイルを吐き出すと、 なぜだかExcel97形式で出力されてしまうんです。 選べるタイプとしては、問答無用でExcelしかないので、 どうにもなりません(T_T) もう一つExcelに出力できるマクロのアクションとして、 「ワークシート変換」ってのもあります。 この機能は、ExcelとAccessテーブルの相互変換を行うためのものらしく、 出力だけでなく、Excelを取り込むこともできます。 早速この「ワークシート変換」を使ってExcelを出力してみると、 一応Excel2000形式で出力されます。 一応ってのは、既にファイルが存在すると何の警告も無しに処理が実行されない、 「出力」のように列名の背景がグレーにならない。 という欠点があるためです。 特に前者の欠点がイマイチで、 マクロから直接ファイルを消すコマンドなどないので、 ファイルを削除するkillステートメントを呼ぶFunctionを定義して、 それを「プロシージャの実行」アクションから呼ぶ必要があります。 これまた面倒な話ですね(T_T) きっとウィザードな人なら、OLEなんかの機能を使って、 AccessとExcelをうまく連携させるんでしょうが、 いかんせん、そこまでの技術的体力がないので、 しょぼく回避するしかなかったです。はぁ〜(>_<;3/17(Wed)
/** あと2週間 */ で今のプロジェクト終了な予定。 相変わらず、次に何やるかはさっぱりワカラン(T_T) 組織図も大幅に変わるらしいので、どの部に行くのかもワカランですし(>_<; どーなることやら。 /** Jakarta Commons DbUtils */ いまさらながら、Jakarta Commons DbUtils試してみました。 すでに、やまねさんによる解説記事も出てますが。 BeanListHandlerを使えば、 今までねちねちコーディングしていた、 ResultSetから取り出した値をJavaBeansに格納するところを勝手にやってくれるので、 これはありがたいかも知れません。 ちなみに、O/Rマッピングとは違うので、 表結合を含んだSQLを投げた結果も、JavaBeansに格納できますし。 問題は、JavaBeansを作るのがメンドクサイって辺りなので、 DBスキーマを読み込んでJavaBeansを生成してくれるツールかなにかあれば、 かなり開発効率は上がるかも知れません。 Torqueにはそんなのありましたが、わざわざそれ持ち出すくらいならTorque使いますよね? (getter/setterはEclipseが生成してくれますけどね。。。)3/15(Mon)
/** のみのみ */ 快気祝いかなんか知らんが、早速飲みに行ってきました(^o^) 風邪で減った体重も、あっという間に元通り。。。 ま、おいしいもの食べて飲んでって、昨日もだけどね(^^; /** 一人で仕事 */ 周りの人とかに「一人で仕事してんだよね〜」とかいうと、 決まって「気楽でいいね〜」と返ってくるんですが、 なにげに客は手ごわいし、仕事の責任は一身に受けるわで、 実はあんまりラクじゃなかったりも。。。と感じています。 先週は、月曜日の夜から水曜の午前中まで、 発熱&だるだるで動けなくなったんですが、 木曜日に打ち合わせがあったので、水曜は体ひきずって行ったりもしました。 打ち合わせは一応体裁を整えたものの、かなり不完全でしたが(T_T) よく、「一人暮らしで風邪ひくと辛いよね〜」とか言いますが、 その上仕事も一人でしているとなると、辛さも二倍ってとこでしょうか。 まあ、その分周りが言うように気楽な部分もあるので、 息抜きしながらやってるところは否定できないのですが(^^; とりあえず、この程度のプレッシャに負けるようでは、 ダメダメ人間なので、今月末の終了に向けてガシガシやってきます! 倒れない程度にね(^^;;3/13(Sat)
/** ぶりゲッツ! */ スーパーで100円引きのシールにつられて買ってしまいました(^^; 主婦か?! しょうゆ大さじ2、みりん大さじ3、さけ大さじ4のタレをあわせて、 そいつにぶりの切り身を15分間つけて、あとはそのタレをかけつつ焼くだけ。 もうちょー簡単(^^; なかなかの美味でした。 /** レッスン♪ */ 引越し後の初レッスン行ってきました! 音大卒とかいうことで、なかなかするどい指摘がバシバシ! ひそかに自習していた、ブルクミュラー25の練習曲の「すなおな心」を みてもらったんですが、腕を固定することと、楽譜の指使いを守ることを指摘されました。 楽譜の指使いって、別に守らなくても弾きやすいように弾けばいいのかと思ってましたが(^^; それによって音の出方も違うらしく、守った方が良いようです。 これからハノンとかいうのと、ピアノの練習ABCとかいうのも合わせてやるので、 またまたハードっぽいような気もするのですが、 月4回はキツイでしょうってことになって、2回にしてもらう代わりに、 45分とかやってもらえることになりました。 その方がレッスン代も安いですし。 いままで、30分の月4回だったんですが、 あれ?もう終わりですか? っていう感じもしてたので、45分やってもらえるのはありがたいことです。 なんか充実しそうな予感(^^) つうわけで、かなぁり練習したくなってるこの頃です♪ /** 坂 */ うちの近所はとても坂が多いのですが、 この土地で移動手段にチャリを選ぶと、ヒドイ目に合いますね。 まず、うちから駅までの間の坂が、これまた長い! そんなに急勾配ってワケでもないのですが、とにかく長い! 今日はそんな坂を二往復もしたせいか、非常にやせました(^^; まあ、風邪で食欲がなかった分減ったってのもあるんですが、 減量生活は、一気に加速する可能性もありますね。 標準体重が63kgぐらいなので、それ目指してがんばるこの頃です。 /** KW乳酸菌 */ KW乳酸菌入りのやつ飲んでみました。 なんか、その日はとっても暑く、出先から帰ってきて、 駅から10分ぐらい歩いて自社に戻ったので、のども乾いていたので、 こりゃあさぞかしうまいだろうと思ったんですが、 なんか甘ったるいだけ? これ、アミノサプリと同じで、 一見体に良いように見せかけて、実は飲み続けると太るっていう、 シロモノであるような気がしてなりません。 そもそも、税込み168円っていうのも許しがたいですしね。 最近は症状も治まってきているので、 どの程度花粉症に効くのかもわかりませんが、 このカロリーを消費できない人は飲んじゃあいけません。 お気をつけください。3/12(Fri)
/** ようやく通信環境整備完了 */ 無線LANがひけたおかげで、ようやく通信環境が整いました。 風邪も治ったことですし、ここの執筆もはかどるかも知れません。 ちなみに、最近はプラネックス一筋なので、 そこの無線ブロードバンドルータBLW-04GMと、 PCIスロットに指すタイプの無線ターミナル(?)GW-DS54Gを組み合わせて、 アドホックモードとかいうのでつないでます。 一見パッケージみると、アクセスポイントが必要な感じで書いてあるんですが、 それはインフラストラクチャモードとかいうのでつなぐ時だけ必要で、 実は、アドホックモードで無線機器同士通信できるというわけです。 危うくダマされそうになりました(^^; 一応IEEE802.11g対応なので、最大54Mbps出るっていう話なんですが、 ADSLのスループットが全然ショボイので、 他のPCとのファイル交換ぐらいしか役に立たないことでしょう。 まあ、体感満足できる速度出てるのでいいのですが。 とりあえず、前の有線ブロードバンドルータがいなくなったことで、 足元が非常にすっきりしたのは、とても喜ばしいことです(^^) /** 最近のお気に入り */ オレンジニュース Java的リンクの日常系に入ってたんですが、なかなか面白いネタが多いです。 多分、雑多ネタってのがいいんでしょうね(^^) /** バケラッタ〜 */ http://www.nck.co.jp/ とかいうサイトにアクセスしてみたら、 化け化けなサイトが出てきたんですが、 よく見てみると、.NETで作られてるっぽいです。 でも、metaタグいっぱい入っている割には、エンコードの指定が無いから、 化けちゃうんでしょうねえ。。。 Webサイトも揺らがないように、がんばって欲しいものです。3/11(Thu)
/** たんたんと仕事中 */ 残業もほとんどなく、刺激もほとんどなく、とことん平坦。。。 /** 目指せ! 簿記3級!! */ 昨日発表だったんですが、無事受かった模様(^^)v だんだん自分が何でメシ食ってるのか分からなくなりそうでしたが、 去年の9月から、ひたすらU-CANの教材で勉強した結果だったので、 自分で自分を誉めてあげたいと思います。 ちなみにちょっと良い話。 U-CANには添削問題ってのがあって、全15回分あり、 2回分ずつ、最後の余りは1回分提出するようになっているのですが、 試験間際時間があまりにも無かったので、 ギリギリのタイミングで3回分まとめて送ったところ、 なんと!試験の前日に「速達」で「3回分まとめて」返ってきたんです!! 「速達」っていえば、郵便料金が高くなるやつですよ。 それなのに、なんともはや世の中捨てたもんじゃないですね(^o^) 35,000円出せる人には、U-CANやっぱりお勧めですね(^^) /** 洋光台物価高過ぎ(T_T) */ 洋光台っつー土地は、前住んでた矢向に比べて、 どえらい物価が高くてどーしょーもないです(T_T) 前は、5kgで1900円のたくわえくんとか、 どこの米だか、そもそも国内モノかどうかも怪しい、 5kgで1680円の米を食ってたもんですが、 ここでは、2500円以上が当たり前みたいです(T_T) しょーがねーから貧乏人はこれでも食っときな! っていう勢いで、2280円の米が売ってたので、泣く泣くそれ買ってきました(T_T) はー。よそもんには冷たい土地だがやー(T_T) 魚はいつも高めですが、 肉と野菜は高い時と安い時があるらしく、 スキを付いて買わないことには、 高いものを掴まされること請け合いです。 まあ、住宅街、すなわち、主婦の町だけあって、 買い物素人には、まったくオススメできませんね。 僕も、2年間の一人暮し経験が無かったら、 あっという間に財布の中身をすり減らされていたことでしょう。 あと高いのが、クリーニング代。 Yシャツ1枚100円以下が当たり前だったのに、 ここじゃあ120円もするんです(T_T) なんてこった。。。 ちなみに、ホワイト急便Yシャツ100円って看板出しといて、 カラーシャツは130円とか、すっげえ矛盾してるし。 それに、土曜日に出したら、日曜日は工場が休みだから、仕上がりは月曜日の夕方ね! っておい! 次の日仕上げなんて当たり前でしょうが!! しかもなんで夕方??? まあ、幸い隣のクリーニング屋が即日仕上げやってるの気づいて、 なんとか無事に済みそうです。 いやはや、ほんと世知辛いもんです。。。