schalabi: groooße Perlscripte!

Beitrag lesen

Hey Alex,

danke für den ausführlichen Beitrag.
Mir gehts allerdings weniger um die Programmverwaltung, sondern um die Struktur die einzelne Unterseiten einbinden.
Ich unterscheide natürlich auch Hypertext von Perl und binde Ersteren mittels HTML::Template::Compiled ein. Die Dokumente befinden sich dann schon vorkompiliert im Cache und warten darauf mit Variablenwerten gefüttert zu werden. Ich mache mir bei den ganzen Modulen lediglich Sorgen hinsichtlich des geplanten Umstiegs von Perl 5 auf 6. Dann stehste siehste nämlich alt aus, wenn deine Module nicht übersetzt werden. Aber lassen wir das :)

Meine Frage ist eine andere:
In meiner Community werden viele Dinge getan. Ich muss z.B. auf jeder Seite prüfen, ob derjenige eingeloggt ist oder nicht. D.h. ich muss in jedem Script eine Verbindung zum Session-Modul aufbauen usw. Bei kleinen Programmen ist sowas relativ einfach:

  
my %public = (  
   'startseite'    => \&startseite,  
   'impressum'     => \&impressum  
);  
  
my %secure = (  
   'videos'        => \&videos  
)  
  
if (exists $public{$show}) {  
   $public{$show}->(\@args);    # z.B.: $dbh, $cgi, $obj  
} elsif (exists $secure{$show}) {  
   if ($session) {  
       $secure{$show}->(\@args);  
   } else {  
       print "403 Forbidden";  
   }  
} else {  
   print "404 Not found";  
}  

Meine Frage ist: O.g. Beispiel ist unperformant da jedesmal die gesamte Datei geladen werden muss, auch wenn nur "impressum" benötigt wird.