N.Katoh
typer_jp****@yahoo*****
2005年 4月 29日 (金) 16:53:08 JST
加藤です。 先ほど「BBS-サポート掲示板/396」 http://fswiki.poi.jp/wiki.cgi?page=BBS%2D%A5%B5%A5%DD%A1%BC%A5%C8%B7%C7%BC%A8%C8%C4%2F396 に書きましたが、これに関する詳細などをメールします。 掲示板での問題はページ保存時等に、保存はうまくいっているがエラーメッセー ジのないエラーが発生するという物です。これは、plugin/rss/RSSMaker10.pmで RSS1.0を生成する時、Jcode.pmでUTF8への変換を行っていますが、この際に大量 のメモリを消費するようです。このため、BIGLOBE等リソース制限の厳しいサー バでは、save_afterとdelete hookでデフォルト有効なRSSMaker10.pmが呼ばれ、 Out of memoryで強制終了をくらってエラーが発生するようです。 回避策としてはrssプラグインを外すか、UTF8変換を行なわないRSS0.91にするか で回避できるようです。 さて、この先が本題なのですが、4.0ではUTF8化を予定してますよね。その時に Jcode.pmを使うと上記の様なサーバでは使用不可となってしまいます。そんなわ けでもっと軽い変換モジュールへの移行を検討した方が良いと思った次第です。 とりあえず見つけたところでは、検証などはしていませんが Unicode::Japaneseというのがあるようです。 http://tech.ymirlink.co.jp/ 検討していただければと思います。 以下、検証の結果です。参考までに。 環境 * perl: v5.8.6 built for i386-freebsd-thread-multi-64int * Apache/2.0.53 * FreeBSD5.4-RC2 リソース制限の方法 FreeBSDでは rc.conf[.local] で「apache2limits_enable="YES"」とする事によ り、/etc/login.conf を元に limits を使用したリソース制限を行なう事ができ るため、この機能を利用してdatasize(データサイズの最大値制限、mallocとか のヒープ領域の大きさ?)に制限をかけた。 使用したCGI wiki.cgi: FreeStyleWiki3.5.7、ほぼデフォルト状態 rrd_graph.cgi: モジュールRRDsを使用してrrdtoolsのグラフを作り表示する自 作のCGI null.cgi: "Content-Type: text/html\r\n\r\n<html><body></body></html>"を 出力するだけのCGI 結果 datasize 状態 500k apache自体が動かない 1M null.cgiがok 3M rrd_graph.cgiがok 7M RSS1.0生成以外はおおよそokの様子 12M RSS1.0生成がok では。 -- typer typer_jp****@yahoo***** Noboru Katoh typer****@chive*****