タグ

singletonに関するonagataniのブックマーク (2)

  • Sessionの生成・破棄を任意のタイミングで制御可能にするScope::Session - LEMON IN THE BOOKSTORE

    @kazeburo先生から解説記事の希望とあれば、まじめにブログ書かないと@kzysにDISられようとも気にも留めない僕ですら、記事を書きます。 前段のところを丁寧にまとめると、こりゃ厄介だなと思っていたところ@kazeburo先生の記事が出てきたので、引用しながらScope::Sessionなる昔書いたCPANモジュールの話をします。 mod_perl のアプリケーションでは、Apacheモジュールの提供するpnotesを使うとリクエスト毎のデータを簡単に持つことができます。pnotesに入れたデータはリクエストの処理が終了したところで自動的にクリーンアップされます。これを利用したのがリクエストごとにインスタンスを作成破棄できる、Apache::Singleton(::Request)です。 通常Singletonというと「常にインスタンスが一意」という性質をもったクラスなんですが、cg

    Sessionの生成・破棄を任意のタイミングで制御可能にするScope::Session - LEMON IN THE BOOKSTORE
  • Contextの生成・破棄を任意のタイミングで制御可能にする Scope::Container(仮) - blog.nomadscafe.jp

    追記 CPANリリースしました http://search.cpan.org/dist/Scope-Container/ /追記 mod_perl のアプリケーションでは、Apacheモジュールの提供するpnotesを使うとリクエスト毎のデータを簡単に持つことができます。pnotesに入れたデータはリクエストの処理が終了したところで自動的にクリーンアップされます。これを利用したのがリクエストごとにインスタンスを作成破棄できる、Apache::Singleton(::Request)です。 また、pnotesはデータベースの接続の管理にもしばしば使われます。1リクエストを裁いている間だけデータベースとの接続を維持し、リクエストが完了したところで接続を閉じるような処理に利用されています。このようにすることでmod_perlのプロセス数分(数百)の接続がMySQLに常に張られることもなく、また1

    onagatani
    onagatani 2010/11/02
    以前に似たような事を考えて、それenvでおk と助言頂いた事があったなぁ、、。そんときにScope::Sessionに自分もいきついたけど使わなかった。
  • 1