タグ

ブックマーク / blog.tmtms.net (3)

  • MySQLの文字コード事情 - tmtms のメモ

    この前 MySQL Casual に登壇して、「MySQLの文字コード事情」と称して発表してきました。 終電の都合で途中退席しましたが楽しかったです。また機会があれば参加したいです。 発表スライドはこちら MySQLの文字コード事情 2017版 from Masahiro Tomita www.slideshare.net 以下、補足のような何か。 「Charset≒エンコーディング (MySQLに限らない)」 英語版のWikipediaでもcharsetは Character encoding にリダイレクトされます。 自分がcharsetという用語に出会ったのはおそらくメールのContent-Typeヘッダが初めてだったと思います。 今ではメールだけではなくHTTPのヘッダでも使用されています。 なお、CharsetはInternet Assigned Numbers Authorit

    MySQLの文字コード事情 - tmtms のメモ
  • Ruby の Timeout の仕組み - tmtms のメモ

    Ruby で長い時間掛かるかも知れない処理のタイムアウトを行うにはこんな感じにします。 require 'timeout' begin Timeout.timeout(3) do # 3秒でタイムアウト hoge # 何かの処理 end rescue Timeout::Error puts 'なげーよ' # タイムアウト発生時の処理 end Timeout.timeout はブロック開始時にスレッドを作成し、そのスレッドで指定された秒数だけ sleep して、sleep から復帰してもまだブロックが終わってなければ作成元のスレッドに対して Timeout::Error 例外を発生させます。 指定時間以内に処理が終わる場合: timeout(X) │ スレッド作成 ─┐ │ │ ブロック実行 sleep X │ │ スレッドkill→ 🕱 │ timeout復帰 指定時間以内に処理が終わら

    Ruby の Timeout の仕組み - tmtms のメモ
    yogo
    yogo 2016/08/26
  • Ruby/MySQLの速度 - tmtms のメモ

    Ruby 2.1.0 preview1 がリリースされたので、Ruby/MySQL の速度を測ってみました。 測定環境 ThinkPad X220 Core i5 2.3GHz Linux Mint 15 32bit MySQL 5.6.13 測定内容は https://github.com/tmtm/ruby-mysql/tree/master/bench 参照。 ruby-mysql すべて Ruby で書かれたバージョンです。 select_prepare に掛かる時間が 1.9.3, 2.0, 2.1 と増加傾向にあります。 それ以外は 1.9.3 以降はどれもほぼ同じです。 insert と insert_prepare の差は、オブジェクトを MySQL のネットワーク表現に変換している部分によるものでしょうか。 もしかしたら、整数なんかは律儀に変換せずに to_s して文字列

    Ruby/MySQLの速度 - tmtms のメモ
  • 1