Perl è obsoleto per CGI e FCGI? [chiuso]

0

Quando abbiamo fatto lo sviluppo web nel 1996 erano CGI, FCGI e Perl sul backend. Ora perché Perl non è più così popolare e invece usiamo Java, Python, Go, PHP, C # e tutto tranne il Perl? Per me sembra che Perl dovrebbe essere buono dato che ha avuto molto tempo per maturare. Cosa è successo a causa della perdita di applicabilità del Perl come lingua del server?

    
posta Niklas Rosencrantz 24.08.2013 - 18:53
fonte

2 risposte

8

Il modello per la programmazione web negli anni 90 era il lancio di un'applicazione che utilizzava l'interfaccia common gateway per avviare un altro processo che è stato biforcato dal server web.

Il forking di un processo è un'operazione piuttosto pesante. Perl, questo significa far girare l'interprete, eseguirlo e quindi far terminare il processo. Quando si lavora con carichi pesanti, questo è diventato proibitivamente costoso (memoria e CPU).

FastCGI ha ridotto il sovraccarico di CGI riutilizzando il processo, riducendo il pesante biforcarsi di un processo. Questo è più in linea con i server delle applicazioni, il che ci porta a ...

L'approccio di sviluppo oggi consiste nell'avere un server delle applicazioni in un linguaggio che ha un modello di threading dei processi leggero, in grado di gestire carichi molto grandi (rispetto ai giorni di CGI). Di questi avete Java, Go e C # che seguono questo approccio.

Questo non significa che perl è fuori. Esistono server di applicazioni per Perl. Raramente si sente parlare di Catalyst rispetto a cose come Zope, NodeJS o la pletora di server Java App.

Parte di questo è il tempismo. Mentre lo sviluppo dei server di applicazioni Java era in corso, Perl è stato un po 'impantanato con il lavoro su perl 6 (ogni giorno ora) e quindi la comunità nel suo insieme lascia che il percorso di sviluppo passi.

I personalmente sconto la disciplina delle lingue come una ragione per cui perl ha mancato di indicare javascript, php e ruby come tre esempi di linguaggi ugualmente indisciplinati che rimangono popolari nell'area web.

Linguaggi come Java e C # (e in misura maggiore, python) con il principale supporto aziendale (Sun / Oracle, Microsoft, Google) e, sì, più disciplina nella lingua sono più allettanti per lo sviluppo aziendale.

    
risposta data 24.08.2013 - 20:48
fonte
3

Per gli stessi motivi per cui tutti scrivono tutto in Java, Python, PHP e C # ... si utilizza lo strumento giusto per il lavoro da svolgere.

Perl può davvero fare tutto ciò che ti serve. Voglio dire, Movable Type e Markdown sono entrambi pezzi di software ampiamente usati che sono scritti in Perl e sono completamente diversi.

Le ragioni per cui alcune persone non usano Perl sono principalmente soggettive (codice brutto, difficile da imparare, ecc.) ma puoi dire quello di qualsiasi lingua.

    
risposta data 24.08.2013 - 19:12
fonte

Leggi altre domande sui tag