Ef það vill svo ólíklega til að einhver Perl CGI forritari ráfi inn á þessa síðu mína við og við, þá vil ég vekja athygli á Apache::PerlRun. Þetta er hluti af mod_perl pakkanum fyrir Apache vefþjóninn, en er aðeins öðruvísi en flestir ímynda sér...
Mod_perl embeddar Perl þýðenda í hvert einasta instance af Apache. Ef maður skrifar venjulegan kóða fyrir mod_perl, þá verður maður að passa sig, því að breyturnar fllushast ekki, þ.e.a.s. það er ekki hægt að gera ráð fyrir því að líftími skriftunar endi þegar framkvæmdum er lokið. Skriftan er kompæluð einu sinni og síðan geymd í minni og keyrð aftur og aftur til að þjóna nýjum CGI beiðnum. Þetta er um 8x-10x hraðara heldur en venjuleg Perl CGI skrifta.
Aftur á móti þá er það vægast sagt tortúr að skrifa kóða sem er áreiðanlegur í svona umhverfi. Tilraunir mínar til þess að snúa Mentat í þannig horf gengu ekki nægilega vel, enda verður kóðinn að vera skrifaður með þetta í huga frá upphafi.
Með Apache::PerlRun, aftur á móti, þá færðu ennþá embeddaðann Perl þýðenda í hvert einasta eintak af Apache, en CGI umhverfið er emuleitað. Fyrir vikið getur maður notað það með hvaða skítugu CGI skriftu sem er, án þess að forka fyrir hverja einustu beiðni. Eftir að ég setti þetta í gang á öllum Mentat kerfunum sem eru hýst á Arakkis hefur svarhraðinn við vefbeiðnum rúmlega tvöfaldast. Þetta útskýrir m.a. snerpuna á vefnum mínum, þótt hver einasta síða sé dýnamískt mynduð af CGI forriti.
