Давно дело было, уже не помню. Может, и не совсем роняет, но факт остаётся фактом - скрипт работает в пространстве апача и теоретически может его сломать.
mod_perl - реально большая часть старых скриптов на перле не запустится.
После некоторой доработки(http://perl.apache.org/docs/1.0/guide/porting.html) можно будет запустить в Apache::PerlRun режиме, что ВЕСЬМА неплохо повысит производительность. Грубо говоря хорошо написанный скрипт при переходе доработки не потребует.
Однако если хочешь добится ЕЩЕ большего прироста, то надо писать непосредственно под mod_perl приложения.
mod_perl vs FastCGI:
Для mod_perl кол-во запущенных процессов будет меньше чем для FastCGI, в общем случае.
Если не использовать дополнительный возможности mod_perl то требования к написанию программ будут не очень большие.
Пример:
mod_perl:
use CGI qw/:standard/;
use strict;
print header();
print "<html><body>Hello World!</body></help>";
FastCGI:
use CGI qw/:standard/;
use CGI::Fast;
use strict;
while (my $q = new CGI::Fast) {
print header();
print "<html><body>Hello World!</body></help>";
}
Главный хинт для обоих случаев использовать use strict