White scenery @showyou, hatena

If you have any comments, you may also send twitter @shsub or @showyou.

メモ

あとで調べる

>既に{A,B}あるなら+1,ないなら新規作成
18:42 : mecab分かち書きだけか
18:42 : SELECT文投げて、それによってルーチン分岐させてまへんか?
18:43 showu_mba: はい
18:43 : それ遅い原因のひとつ
18:43 : ついでに
18:43 showu_mba: ORmapper(SQLAlchemy)つかってるので直には触ってないけど、多分Select使ってる
18:43 : SELECT投げるとき、UPDATE/INSERT投げるとき、それぞれで DB接続つくってまへんか?
18:43 showu_mba: いいえ
18:44 showu_mba: ・・だと思う。さすがにsessionは切ったりしてないし。
18:45 : sessionつくるのは負荷になるので要確認ですな
18:45 showu_mba: 了解
18:45 showu_mba: select->ルーチン分岐はなんか対策あるんでしょうか
18:45 : DBにもよるんだけど
18:46 : Stored Procedureをつくって、引数に UPDATE or INSERTしたいデータを渡す
18:46 showu_mba: ふむ
18:46 : Procedure内で SELECT投げてデータチェックして分岐、ってのをさせる
18:46 : フロント側のプログラムからは Procedureをコールするだけ。
18:46 : という形
18:47 showu_mba: なるほど
18:47 : プログラムと DBの間の通信を削減させるわけです
18:47 showu_mba: メモメモ・・
18:48 : ついでに Procedureに一旦登録すると SQLの文法チェックとかがいちいち走らないので DBにもやさしい
18:48 : でもなんか…それでもまだひっかかるねぇ
18:48 : なんで2secもかかるのか…
18:48 : SELECT, INSERT/UPDATEのそれぞれで DBコネクションつくってたら それぐらいの性能だったとしてもおかしくはない
18:48 showu_mba: マルコフテーブル空でもこの倍くらいしか速度でませんからねぇ
18:49 showu_mba: なるほど
18:49 : そうだねぇ
18:49 : DB操作だけで、きっと 500ms以上かかると思う
18:49 showu_mba: うわ・・
18:50 : INSERTやUPDATEの結果待ちも重いね
18:50 : この場合してないと思うけど
18:50 : そこはもう、スペックやらテーブルのサイズやらと相談だけどw>SQL結果待ち