タグ

mod_perlとperlに関するhirafooのブックマーク (7)

  • tech-log 控え室改め ありんくtech-log

    こちらで続けようと思います。 とりあえず、CentOS5、CentOS6の共生と cpanmでのImage::Magick の取り扱い、Imagerがいまいち美しい処理をしてくれないあたりが目下の目標です。

  • Apache::Test事始め - D-6 [相変わらず根無し]

    Apache::Test事始め 年末前後からApache::Testで真面目にテストを書き始めている。 ところが全くドキュメントがないんだね。いや、あるんだけど、携帯の機能を使いたいだけなのにあの厚いマニュアル読むの?みたいな感じで。まぁというわけでとにかくざくざくっとドキュメント読んでテスト書いてたらようやくなんとなく分かってきた。この間ある程度他人にも説明できたので自信ついたしw Apache::Testはmod_perlハンドラをテストするときに使う。ディストリビューション等でmod_perlをテストしようと思うとApache自体を立ち上げたりなんだりしなければいけなくて「一体どうテストすればいいんじゃ?!」となりがちだが、Apache::Testを使うと、テスト用httpd.confの生成テスト用のapacheの起動/停止mod_perlハンドラ上で動かしたTest::More等の

  • mod_perlで親プロセスとのCopy on Writeな共有メモリを増やす方法。 - hideden.hatenablog.com

    大量にアクセスがあってMaxClientを大きく設定したい場合、Apacheの1プロセスあたりのメモリを少なくするのが重要。当然アプリ側で大きなライブラリを読み込まずに画像の変換はGearmandにタスクとして投げたりとかの工夫するのも有効だが、fork元になるApacheの親プロセスと子プロセス間でできる限りCopy on Writeな共有メモリを増やすのも有効。 その辺の詳しい仕組み等の話はnaoyaさんがd:id:naoya:20080212:1202830671でしてるのでそこを参考に。linuxカーネルまわりの仕組みって楽しいよね。会社の案件ではFreeBSDサーバーも結構あるんだけどFreeBSDではどうなるのかは知らない。 で、社内にXenなテストサーバーがあるのでまっさらな環境で色々実験してみた。・・・過程を全部書こうとしたら長くなったので省略。地味にpsしたり/proc/

    mod_perlで親プロセスとのCopy on Writeな共有メモリを増やす方法。 - hideden.hatenablog.com
  • mod_perlハンドラを書く - とみぞーノート

    Maintainers Authors 説明※ この章ではmod_perlのコーディングの詳細、通常のPerlコーディングとの違いを扱います。その他のほとんどのPerlコーディングに関する情報はperlのmanページや書籍で取り扱われています。 前提※ 原文なし メソッドが有効な場所※ mod_perl 2.0では多くのモジュールに跨ってメソッドが存在します。これらのメソッドを使うためにメソッドを含むモジュールは最初にロードしておかないといけません。そうでないと、mod_perlは「メソッドを見つけられない」とエラーにします。どのモジュールが必要かを探すにはModPerl::MethodLookup モジュールが使えます。 Techniques※ メソッドハンドラ※ 関数ハンドラに加えてメソッドハンドラを使うことができます。メソッドハンドラは継承のメリットを生かしたコードを書きたい場合に便

  • [perl][mod_perl] ithreadについて - PerlさんPerlくん

    mod_perl2を使う上でカレントディレクトリを変更できない という場合がある。これは設定を変更することで 回避できる(普通のCGIと同じように使えるが、その分プロセス をたくさん使用するのでメモリを余計使う)。 それにはperlのインストール時に"ithread"という機能が有効 になっていなければならない。 Perlインストール時にデフォルトでインストールすると ithreadという機能が無効になった状態でインストール される。 その状態で、httpd.confに PerlOptions +Parentを付与しても下記のようなエラーがでる。

    [perl][mod_perl] ithreadについて - PerlさんPerlくん
  • 大規模なeコマースサイトを Apache と mod_perl で構築する

    この文書は Perl.com: Buildling a Large-scale E-commerce Site with Apache and mod_perl を翻訳したものです。2001年に書かれた文書であり、Apache/mod_perl/CPAN モジュールなど現在の状況にはそぐわない部分もある可能性があります。 大規模なeコマースサイトを Apache と mod_perl で構築する よくある神話 Perl はセーブする アプリケーションサーバの撰択 ケーススタディ: eToys.com Apache::PerlRun による救済 新たなアーキテクチャの計画 2000年のクリスマスを切り抜ける アーキテクチャ プロキシサーバ アプリケーションサーバ 検索サーバ ロードバランスとフェイルオーバー コード構造 キャッシング セッショントラッキング セキュリティ 例外(Excepti

  • CatalystアプリケーションでApache2::Reloadを使えるようにする方法 - ヒルズで働く@robarioの技ログ

    はじめに Catalystでプログラムの修正を反映させるにはサーバーを再起動する必要があります。Catalyst付属のテストサーバーでは、-rオプションによって更新を自動的に検知して再起動することができます。 ./script/myapp_server.pl -rしかしコンポーネントが増えてくるとCatalystの起動に時間がかかるようになり、毎回再起動するのが辛くなってきます。実際、30個ぐらいのSchemaクラスを抱えるModelがある時、Controllerを少しいじっただけでサーバーが再起動され、アクセス可能になるまで数秒〜10数秒待つ必要がありました。Controllerだけ再読み込みしてくれればいいのに、と思いましたがサポートされていない感じ。ModPerlアプリケーションとして動かしてApache2::Reloadを使おうとも思ったのですが、それもサポートされてないとの事。

    CatalystアプリケーションでApache2::Reloadを使えるようにする方法 - ヒルズで働く@robarioの技ログ
  • 1