Avatar billede melange Nybegynder
15. april 2006 - 19:22 Der er 1 kommentar

Yddelse på CGI (C)

Kort version: Hvordan yder CGI (Både i C og Perl) i forhold til PHP?.

Jeg kører i øjeblikket en side med et galleri. Når folk så uploader billeder har jeg en algoritme som forsøger at konrollere om billedet allerede ligger i databasen.
Eksakte kopier findes let vha en sha-sum, men for at finde ud af om billedet har været igennem et par jpg-komprimering, er blevet resizet e.l. kræves det at billederne skal forarbejdes. Denne proces er desværre ret tung, og tager (på et 4 MB billede) op til 170 sekunder.

Jeg er derfor på udkig efter alternativer til mit PHP-script, og da C jo på mange punkter ikke er mere end en gang assembler med lidt syntaktisk sukker tænkte jeg at der var noget tid at vinde ved at implementere min algoritme i C. Gælder dette også når man kører scriptet/programmet via CGI?

Og hvad med Perl? så vidt jeg kan forstå er Perl standart til CGI-scripts, men hvorfor? - og hvordan er ydelsen der? Grunden til jeg overvejer CGI er jo netop yddelse, men hvordan står Perl på det punkt?

mvh

melange
Avatar billede Slettet bruger
16. april 2006 - 06:25 #1
CGI's problem er at det skal starte en process hvergang det bliver aktiveret og derfor ikke skalerer så godt som systemer, som baserer sig for eksempel på worker-pools.

For at det bliver et rigtigt problem skal man for det første have mange brugerer på sit system og det CGI som afvikles skal være forholdsvis kort (afviklingstid) således at den tid systemet skal bruge på at starte processen bliver stor i forhold til tid for at afvikle processen.

Dette er som jeg forstår dit spørgsmål ikke et problem, tværtimod så vil tiden det tager at starte processen i forhold til at afvikle processen i dit tilfælde være minimal og ikke betydende for den samlede ydelse af systemet. Det du så skal sikre dig er at du rent faktisk kan implemenrerer din algoritme hurtigere i C end i PHP (en relative smal sag IMHO).

Men hensyn til PERL så har det mange fortræffeligheder specielt i forbindelse med tekst processering, men lige til dit formål ville jeg ikke mene at du kommer meget længerer end med PHP.

Så det bliver vel noget med at lave en C CGI til at lave billede behandlingen og så holde resten af sitet i PHP skulle jeg mene.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester