2012-05-30 9 views
6

Ho un server Apache in cui sto impostando fcgi. Stavo pensando di installare il modello su misura mod_fastcgi o il semplice vecchio cgi-fcgi.fcgi vs mod_fastcgi su server apache

mod-fastcgi non sembra per supportare le funzionalità di "multiplexing" fcgi, e il servizio web sto costruendo è un servizio molto alto traffico con diverse migliaia di chiamate al minuto e voglio loro di essere trattati il ​​più velocemente possibile.

Qualche suggerimento o consiglio ??

risposta

4

Infatti, mod_fastcgi non supporta il multiplexing. Suppongo che ciò avvenga perché il server Web Apache gestisce l'elaborazione simultanea stessa. Probabilmente hai già affrontato i suoi vari modelli di multielaborazione (MPM) ...

Apache è altamente ottimizzato per le varie fasi (richiesta) fornite. I vari moduli possono connettersi dove e quando vuoi, il che rende Apache un server eccellente per integrare direttamente applicazioni ad alte prestazioni e/o molto complesse (ad esempio con moduli personalizzati in c, mod_perl e così via) come moduli stessi. Ma entrambi, mod_fastcgi e cgi-fcgi, sono IMHO utilizzati solo per fornire risposta e/o gestore filtro. Così; molte delle grandi funzionalità (configurazione, mappatura, registrazione post-richiesta & cleanup ...) fornite con Apache non vengono utilizzate in tale configurazione.

Così; Preferisco non usare Apache se la tua applicazione è basata su FGCI. Soprattutto per le applicazioni ad alte prestazioni sotto carico elevato; Si può preferire un demone HTTP più leggero ma veloce. Ci sono molte alternative come nginx o lighttpd. Di solito uno li userebbe come proxy/bilanciamento per i processi FCGI, cache, gestore SSL e provider di registrazione. Naturalmente, Apache è anche in grado di svolgere questi compiti, ma è come usare un elicottero per dirigere il traffico all'incrocio ...

Cheers!