タグ

ブックマーク / blog.nomadscafe.jp (5)

  • Class::DBIで複数データベースを扱う register_cleanup : blog.nomadscafe.jp

    Class::DBIで複数データベースを扱う+register_cleanup Class::DBIで同じ構造の複数データベース扱う時には、まかまかさんのClass::DBI::Plugin::MultiDatabases(後で知った)や、Class::DBIのWikiにあるけど、さらにmod_perl上でのTips ちょっと実際書いたコードと違うので全くこの通りでうごくかどうか心配なのですが、複数データベースに接続をするモジュールを下のように書いてみる。 package Object; use strict; use DBI; use base qw(Class::DBI); use Class::DBI::Plugin::NoCache; use MyConfig;#データベースの接続情報を返すモジュールとする __PACKAGE__->mk_classdata('dbhandles'

    mogwaing
    mogwaing 2007/07/27
    [class:dbi] 複数データベースにまたがるトランザクションについて
  • Data::Pageとページナビゲーション : blog.nomadscafe.jp

    Data::Pageとページナビゲーション 検索などで多くのページがヒットしたときの、ページナビゲーション << 3 4 5 6 *7 8 9 10 11 12 >> の部分をうまく扱って、100ページ分とかあっても、前後のページのみ表示するモジュールを探していたんだけど、良いのが見つからない。 Data::Pagesetというのがあるんだけど、思ったのと違う。 トータルエントリーが30、1ページ5つのエントリーとして、ナビゲーションのリンクは4つとした場合に、Data::Pagesetでは、 ページ1の場合 *1, 2, 3, 4 ページ2の場合 1, *2, 3, 4 ページ3の場合 1, 2, *3, 4 ページ4の場合 1, 2, 3, *4 ページ5の場合 *5, 6 ページ6の場合 5, *6 となってしまいます。*がついているところは現在のページを表してます。 希望としては、

  • CGI.pmのheaderでsend_cgi_headerをさせない : blog.nomadscafe.jp

    CGI.pmのheaderでsend_cgi_headerをさせない CGI.pmのheaderをHTTP headerを作るためだけに使いたいというときに、普通のCGIなら良いのですが、Apache::Registoryなどmod_perlで動かしていると、 my $str = $q->header(-charset=>'EUC-JP'); とした瞬間にApacheにsend_cgi_header(send_http_header)が送られてしまって具合よろしくありません。 my $str = $q->header(-charset=>'EUC-JP'); $strになにか処理。 print $str; というのはうまく動かない。実際のところ$strは空です。CGI.pmのheaderメソッドは便利なので、これをもう少し汎用的に使いたいのでこれを修正したいと。CGI.pmのその分のコード

  • BlogSurfのRSS取得プログラムをPOEで書き直す。 : blog.nomadscafe.jp

    BlogSurfのRSS取得プログラムをPOEで書き直す。 BlogSurfのRSS取得プログラムをPOEを使って書き直してみた。 POEとは、 multitasking and networking framework for perl な、もので、非同期・ノンブロックなプログラムを書くときに非常に便利なフレームワークです。 これで、LivedoorとかJugemの様に重たいサーバがあった場合のRSS取得がスムーズになるハズ。 書いたプログラムの概要はこんな感じ。 負荷対策のようなものを考えないとな。あとは。

  • Deployツール : blog.nomadscafe.jp

    Deployツール 会社でYAMLでDeployのPlanを書いて、実行できるDeployツールを作成中 common: proxies: - proxy1 - proxy2 plans: - name: mod_proxy concurrency: 2 base: ModProxy method: - rsync - httpd_graceful rsync_exclude: - .svn/ rsync_src: /mod_proxy rsync_dest: /var/proxy hosts: c{proxies} - name: mod_perl concurrency: 1 base: ModPerl method: - proxy_drop - httpd_stop - rsync - httpd_start - proxy_add balancers: c{proxies} ba

  • 1