mod_ruby 運用でときどき猛烈に遅い(数分かかる)という症状のため、現在第二 tDiary.Net は素の CGI で運用しています。 「リファラつきアクセスで特にその頻度が高い」ので、データの IO でささっているんじゃないかという気がしますが、tdiary/defaultio.rb を Stable-2_0 のものに替えてみても変化はありませんでした。
そこで、contrib/io/dbi_io を使って、試験的に私の日記を PostgreSQL バックエンドにして mod_ruby 運用してみました。 今のところささるような挙動はなさそうです。
DefaultIO 形式から DbiIO 形式への変換は、tdiary.conf に DbiIO 向けの設定(@dbi_driver_url, @dbi_user, @dbi_passwd, @dbi_author)を書き加えてから、misc/convert2.rb に以下の変更をして実行しました。
@@ -79,8 +79,8 @@ def initialize cgi = CGI.new super( cgi, 'day.rhtml', Config::new(cgi) ) - require "#{PATH}/tdiary/pstoreio" - @io_old = PStoreIO::new( self ) + require "#{PATH}/tdiary/defaultio" + @io_old = DefaultIO::new( self ) @years = @io_old.calendar @years.keys.sort.each do |year| @years[year.to_s].sort.each do |month| @@ -91,8 +91,8 @@ false end - require 'tdiary/defaultio' - DefaultIO::new( self ).transaction( date ) do |diaries| + require 'tdiary/dbi_io' + DbiIO::new( self ).transaction( date ) do |diaries| diaries.update( @diaries ) TDiaryBase::DIRTY_DIARY | TDiaryBase::DIRTY_COMMENT | TDiaryBase::DIRTY_REFERER end
なお、misc/convert2.rb の def initialize の後ろ 2 行は、さっき私が修正してコミットした部分です。
これでうまくいくなら、全アカウントを PostgreSQL バックエンドに移行して mod_ruby 運用にしてもいいかなと思いますが、なんとなく本質的な解決じゃないのが気になります。。。
まつもとさんが日記で書いていたのを見て、妙に気になってしかたがないので本屋に立ち読みに行ったら、すっかりはまってしまって、結局 2 冊まとめて買ってしまいました。
「耳をすませば」もそうだけれど、こういう不器用だけれどまっすぐな中高生くらいの恋に、すごく弱いんですよー。 「若い頃を思い出すわ」と書いているまつもとさんも、いろいろ熱い青春時代だったのかな。
一昨日の勝負プレゼンの結果、うちの提案が採用されました。
今回の提案は、多くのメンバーがそれぞれの力を出しあいながら作り上げましたが、それが終始よい雰囲気の中で行われたので特に感慨深いものがあります。
そういえば、一昨日のプレゼンから帰ってきてこんな雰囲気でしたと報告している時にこんな会話がありました。
ある人「泣き落としとかはしなかったの?」
かずひこ「そんなプレゼンなら私は行きませんよ」
ええ、身勝手なやつですみません。
でも、たとえ劣勢でもあきらめずに泣き落とししてでも仕事を取る、という誇りもひょっとしたらあるのかもしれませんが、最後まであきらめずにより素晴らしいものを提案してお客さまの心を動かす、という誇りを私は選びたいし、そういう誇りをチームで共有したいのです。
[追記] 今回の採用にあたっては、既存のお客さまからの推薦も大きい要因だったと思います。 先日読んだリッツ・カールトンの方の本にも「よいホテルはお客さまのリピート率とリコメンド率が高い」みたいなことが書いてありましたが、今回の採用は、推薦してくださったお客さまの信頼と評価をこれまでの誠実な仕事の積み重ねの中で得てきた同僚たちの努力の賜物です。 ぱちぱち。
「そんな熱い青春時代じゃなかった」とお父さんが言ってましたよ。
dbi_ioでの複数日記運用って前例がないかも知れないので、実証実験に期待(笑)。
ぜひお父さんよりもずっと熱い青春時代を過ごしてくださいね!>「まつもとの娘」さん
>たださん
複数日記運用でのバグは一つだけ見つけましたが、特に問題なさそうです。
あとはパフォーマンスの改善ですね。