タグ

ブックマーク / download-takeshi.hatenablog.com (4)

  • mysqlに独自関数を組み込む(UDF) - download_takeshi’s diary

    mysqlには独自のユーザ定義関数を組み込むことができる「UDF」(User Defined Function)って機能があります。 例えばsennaのsnippetなどもUDFとして書かれてるみたいです。 mysqlに詳しい方々の間では結構メジャーなもののようですが、実際に使ってみたことがなかったので、ちょっと試してみました。 作ってみる関数 mysqlには現在時刻をミリ秒まで表示してくれる機能がないようなので、それを作ります。 ということで現在時刻をミリ秒まで表示する関数をUDF(User Defined Function)として組み込んでみます。 関数名は「ミリ秒」をあらわす直感的なフレーズで「msec」としました。 ゴールイメージ select msec(); とすると現在時刻をミリ秒まで表示。 select msec("epoch"); とするとunix timeをミリ秒まで表示

    mysqlに独自関数を組み込む(UDF) - download_takeshi’s diary
    punitan
    punitan 2011/10/17
  • ローカルポートを食いつぶしていた話 - download_takeshi’s diary

    ここのところ、お仕事で管理しているシステムで、夜中に負荷が急上昇する事象が発生しており、夜な夜な対応に追われていました。 (このブログ書いている今も、負荷がじわじわ上昇中なんですが・・・) で、いろいろと調査した結果、ようやく糸口がわかってきました。 結論から言うと、ローカルポートなどのネットワーク資源をいつぶしていたようです。 以下、調べていってわかったことなどのメモです。 トラブルの事象 運用しているのは Apache2.2 + mod_perl2 なwebサーバで、リスティング広告システムの配信系です。 リスティング広告の配信のシステムって一般的にロジックが複雑でいやーな感じなんですが、このシステムもご他聞に漏れずかなりのひねくれ者で、しかもトラヒックは結構多めです。システム全体で、日に1000万〜2000万クエリくらいかな。幸か不幸か、このご時勢においてもトラヒック的には成長し続

    ローカルポートを食いつぶしていた話 - download_takeshi’s diary
    punitan
    punitan 2011/09/01
  • 知ってそうで意外と知られていないperlの小技 10選 - download_takeshi’s diary

    意外と知られていないperlテクってのが、意外とあるもんですね。 最近身の回りでいくつか話題に上がったものがあったので、ちょっと書いてみます。 どれも最新のモダパ的なモノではないけども、知っておくと地味に便利かもしれないノウハウです。 中級レベル以上のperlユーザの人たちでも「お、こんなの知らなかった」というのもあるかもね。 複数項目でのソート よくエクセルなんかで「A列を降順、B列を昇順にして並び替え」みたいなことしますよね? perlで複数項目のsortではどうすればできるでしょうか? じつはとっても簡単。sortの次に続くブロックの中でorするだけです。 例えば以下のような4人の子供たちのデータを年齢順、体重順でソートしてみます。 use strict; my @data = ( { name => '太郎', age => 10, weight => 25, }, { name

    知ってそうで意外と知られていないperlの小技 10選 - download_takeshi’s diary
    punitan
    punitan 2010/06/11
  • 噂のnode.websocket.jsでサーバサイドJSとHTML5 WebSocketを体験してみたの巻 - download_takeshi’s diary

    WebSocketを体験してみたいのと、サーバサイドJSを試したいのと、さらにはmac版のChromeをインストールしてみたという条件が重なり、これはもう深夜だけどnode.websocket.jsを試してみるしかないな、という状況に追い込まれました。 構成 最近あたらしく調達したばかりのmacbook air にvirtualboxを入れています。その上でCentOSが動いています。 macbookをクライアントに、CentOS側をサーバとみたてて話を進めていきます。 ちなみに、virtualboxではアダプタ1をNATに、アダプタ2をホストオンリーアダプタ(IPはstaticに設定)としているので、CentOSからは外にも抜けられるしmacbook側からも自由にアクセスできます。ごきげんな環境です。 Node.JSのインストール まずは土台となるnode.jsが必要。ソースをダウンロー

    噂のnode.websocket.jsでサーバサイドJSとHTML5 WebSocketを体験してみたの巻 - download_takeshi’s diary
  • 1