実は最近ちょっとDBIx::Classぐりぐりしてたんですけど、かなりいい感じです。 次からプロジェクト組むときは Class::DBI じゃなくて DBIx::Class にしてみようかなってくらい。 てわけでちょっとずつ比較。チラシ裏モードで書きなぐり。 まず Class::DBI でのページング処理の問題について。 Class::DBI では Class::DBI::Pager が有名ですが、これは検索条件に該当するものを 全部 fetch してきた...
」は音が「シ」のものに集中的に文字化けが見られるなど、顕著な規則性がありました。今回の文字化けは、「音」が似通っているという特色はありません。 しかし、それぞれの漢字のShift_JISコードを調べてみると、ある規則性が浮かび上がってきます。Shift_JISコードを調べるには、序論で紹介したようなIMEやことえりの文字一覧表でもいいのですが、ここではURLエンコードを利...
添付ファイルの指定例: files="c:\temp\aa.txt|abc.txt" ' 別名指定 files="c:\temp\aa.txt||application/octet-stream" ' Content-type 指定 files="c:\temp\aa.txt|abc.txt|application/octet-stream" ' 別名+Content-type 指定 例: svname = "c:\mailqueue" ' メールキューのフォルダ名 svname = "odyssey" ' SMTP サーバマシン名 svname = "host1.who.com/odyssey:25:60" ' ドメイン名 + SMTP サーバマシン名 ' + PORT + TIMEOUT mailto = "あのひとさん<xxxxx@xxxx.xxx>" ...
を読んで、memcached でキャッシュ& 複数の MySQL をアプリのロジックで分散化というのは、もうすっかりスケーラブルなウェブアプリの作り方として常套手段になったと思いました。 2004 年 4 月の MySQL カンファレンスでの Brad Fitzpatrick の発表 Inside LiveJournal's Backend (PDF)から約 3 年半。Mixi やはてなのようなエッジな企業はだいぶ前からこの構成を採用してますが、対法人のビジネス...
世間では PHP が、Perl が、と盛り上がっているようですが空気を読まずまたカーネルの話です。今回はページキャッシュについて。 /dev/shm に参照系DBを持っていくと I/O 負荷が激減した件(当たり前だけど) :: Drk7jp で、ディスク上にあったファイルを /dev/shm (tmpfs) に移したら I/O 待ちがなくなって負荷がさがった、ということなんですがおそらくこれは tmpfs に置く必要はないか...
メモ代わりのエントリー。PerlでRSSフィードを取得してデータベースに登録してみる。 (実際のスクリプトはこちら→rssfeed.cgi) ●使用したモジュール ・LWP::Simple サイトを取得 ・XML::RSS RSSを解析 ・DBI データベース操作 ・CGI CGIの操作 データベースの接続は$dbh = DBI->connect($data_source,$username,$password);。$data_sourceはMySQLの場合は「DBI:mysql:データベース名:host=ホスト名」となる。切断は$db...
原稿を書けと言われて、オープンソースマガジンを二号ほど続けて買ったのですが、オープンソースに明るくない僕にも意外と面白くて、夢中になって読みあさりました。 今日は先月号を重点的に読んだのですが、先月号のテーマは、ズバリ、負荷分散。 ライブドアとGREEの方がそれぞれの負荷分散メソッドをかなり詳細まで語っているのですが、結論から言うと、こういうこと...
MySQL は最もよく知られているオープンソース SQL データベース管理システムです。 同じデータベースソフトには、mSQL とか PostgreSQL とか Oracle とかがあります。 MySQL ソフトウェアは、GPLライセンスに基づき、だれもが無料でインターネットからダウンロードし、使用することができます。 MySQL の機能面での利点は、 十分な処理速度と信頼性がある インストールや操作が比較的簡...
一昨日から今日まで3日間の日程で開催されていた、MySQL Conference & Expo 2007に行ってきました。日帰り圏内どころか、自転車圏内で、こういうカンファレンスがあるのは、素晴しいです。詳細は、随時アップされるであろうプレゼン資料と、Planet MySQLに大量の報告があります(全部英語ですけど)。個人的に注目していたのは、Digg.com、Flickr.comとYoutube.comのDB周りアーキテクチャのセッシ...
『 すでにあるMyApp::View::TTを usebase'Catalyst::View::TT::ForceUTF8'; として継承関係を変ればOK。 』
ダイナミックWebサイトの構築ではPerlとPHPが広く使われている。では、mod_perlとmod_phpのパフォーマンスはどちらがよいのだろうか。ちょっとしたテストをしてみたので報告する。 2006年08月25日 14時05分 更新 ダイナミックWebサイトの構築ではPerlとPHPが広く使われている。なにしろ、LAMPスタック(Linux、Apache、MySQL、 Perl/PHP/Python)に含まれる「P」の3分の2なのだ。それでは、通常のWeb...
『 スケーラリビリティについて。Diggの例。 』
僕は、ウェブアプリケーションの開発をサーバサイドで行うことが多いのですが、ローカルでも開発を行える環境をそろえてみることにしました。特にネットがつながらない場所にて、ノート PC で開発を行いたいので。 過去に XAMPP が良いという話を聞いていたので、入れてみました。そのインストールの流れを記録しておきます。 ActivePerl を入れていましたが、アンインストー...
『 ここでperlの基本を学ぶ。素晴らしいサイト。 』
『 本日紹介するオープンソース・ソフトウェアはInsipid、Deliciousクローンなブックマークエンジンだ。 』
mod_perl のプロセス内でやるのに POE でイベントループ回せ、ということ? もうちょいkwsk! > b:id:kazuhooku naoyaグループ - naoyaの日記 - 非同期SQLサーバ エントリ全体の趣旨はさておき、ソケット通信を非同期化するためにまた別のソケット通信を行うという使用例に違和感を覚えたのですが、回避策としてブクマコメントで提示した POE::Component::EasyDBI も内部で fork (&プロセス...
の中で、タグの絞り込み機能を実装したのに続いて、「完了」や「finish」と言ったタグがついている場合表示しないというオプションを考えている。 そうなってくると、SQLをどう書けばいいのか、また複雑なSQLを構築したときにパフォーマンスは大丈夫なのかと心配。そこで、上記のURLを参考にしながらMySQLの全文検索に注目。 create table ft_tags( id int unsigned not null auto_increment primary ...
『 SQLiteisasmallClibrarythatimplementsaself-contained,embeddable,zero-configurationSQLdatabaseengine. 』
前に書いた「配列から効率良くプレースホルダを作る」の続編です。。 TMTOWTDI な Perl だけあって、色々面白い解がありますね。 Powered By iwai.ug - [Perl] プレースホルダの作成って、こうすれば速いのか! ちなみに自分は、今までこんな感じでした↓ sub placeholder_from_array { return join(',', ('?') x @_); } 確かに、配列を作るのに map() を使うより、このほうが倍近く高速になりますね。 あと、...
詳しくはCookbookの2.1を参照してもらうとして、これは以外とよく出てくる設問なので。 Perl Cookbook (English) Christiansen / Torkington [邦訳: Perlクックブック] Kazuho@Cybozu Labs: MySQL の高速化プチBKところで、実数の場合はどうすればいいんでしょうね。 続きを読む