Ami gyorsabb perl vagy php
Határozottan lehetetlen választ adni erre a kérdésre. Az a tény, hogy a Perl jelentősen eltér a PHP-től. Az első egy meglehetősen fejlett és erőteljes értelmezett nyelv, a második pedig kizárólag az interneten való munkához jött létre. Ezért ha valaki azt mondja, hogy a PHP meredekebb, mint Pearl, küldje el három betűvel. Ezeket a nyelveket egyenlőtlen körülmények között hasonlítják össze.
A PHP könnyebb - tény. Amikor elindítja a httpd démont (az Apache webszervert), azonnal betölti a tolmácsot. Ezért a parancsfájlok lekérdezésénél nincs értelmetlen és erőforrás-igényes CPU terhelés. A szkript azonnal végrehajtásra kerül, így azt mondják, hogy a PHP nagyon okos. A PHP használata közben további memóriát vesz fel (minden gyermeknek van egy php modulja), nagyszámú találatsal pedig teljesítménynövekedést kapunk.
A Perl szkriptek szabványos formában történő végrehajtása némileg eltérõ. Amikor ilyen szkriptet használ, az Apache betölti a tolmácsot, és az utóbbi végrehajtja a kódot. Ugyanakkor sok memóriát veszítenek el. Legalább 2 megabájt minden egyes folyamatnál. Általában 4-6 megabájt. Kiderül, hogy minden alkalommal, amikor elér egy szkriptet, a szerver letölt egy nehéz programot - a tolmácsot. De ez nem jelenti azt, hogy a Pearl szkripteket lassabban hajtják végre. Ez azt jelenti, hogy amikor a Perl-szel dolgozik, a szerver nagy terhelés alatt van.
Nagy terhelések esetén a következőket kapjuk: a PHP-t használó szerver könnyebben tud megbirkózni a kérésekkel, és több ügyfelet feldolgozhat. Abban az időben a Perl webhelyekkel rendelkező kiszolgáló lelassul.
Az egyszerű CGI-parancsfájlok csak néhány sorban és struktúrában különböznek a FastCGI parancsfájlokatól. Például egy parancsfájl az első indításkor kapcsolódhat a MySQL-hez, és tartósan megtartja ezt a kapcsolatot. Ahhoz, hogy a szkript a FastCGI vezérlése alatt működjön, a FCGI könyvtárat hívják. Könnyen telepíthető Linux vagy Unix alatt.
#! / usr / bin / perl
használja a FCGI-t;
my $ request = FCGI :: Request ();
...
Az inicializálás során végrehajtandó műveletek
parancsfájl (például csatlakozás az adatbázishoz)
...
míg ($ request-> Accept ()> = 0)
...
A fő műveletek, amelyeket a szkriptnek végre kell hajtania
...
>
...
Tennivalók (ritkán szükségesek)
...
A lekérdezések végrehajtása során a szkript ciklusként működik: wait-processing-wait-processing. A valóságban (Linux vagy Unix alatt) ez egy alvó folyamat, amely Accept módban van.
Ha sok kérés van, akkor a szerver elindíthatja a folyamat egy másik példányát. Ez bizonyos mennyiségű memóriát fogyaszt, de összességében növeli a kiszolgáló teljesítményét és erőforrás-megtakarítást eredményez.
A következtetés maga is sugallja magát. Ki kedveli a Php-t, hagyja használni, és ne hibáztassa Perl-et. Egy csomó Perl és FastCGI a legjobb válasz az ilyen díjakra. A komplex feladatokkal a PHP a Perl-nél rosszabb a kódfuttatás szakaszában, csak a letöltési szakaszban nyer. De a FastCGI használata elhárítja ezt az előnyt. Tehát a nyelvek közötti választás a feladat sajátosságaitól és a fejlesztő szintjétől függ. A Perl nehéz kezdőknek, de lehetővé teszi, hogy a webes irányítás mellett egy hatalmas rétegfeladatot is megoldjon (például a háttérben dolgozik és biztosítja a webhely működését). A PHP könnyen megtanulható és kényelmes bármilyen típusú webes alkalmazás létrehozásához.