haproxy come bilanciatore del carico e nginx come webserver?

EDIT: Sono interessato all'elevata disponibilità e al setup dei server di performance.

Ho letto un sacco di articoli su haproxy vs. nginx vs apache ecc. E questa è stata la mia conclusione:

  • apache2: Imansible determinare in modo affidabile il nome di dominio completo del server
  • nginx: posso mostrare l'output di un command di shell su un URL specifico?
  • Mac OS 10.4 - come utilizzare Apache 2 personalizzato installare invece di Apache 1.3?
  • Come si asciuga questa configuration Nginx?
  • È ansible fare riferimento alle variables di ambiente da un'istruzione php_value in .htaccess?
  • Come faccio ad aggiungere Access-Control-Allow-Origin in NGINX?
    1. haproxy è migliore bilanciatore del carico rispetto a nginx
    2. nginx è un server web migliore di apache

    Quindi la mia domanda è che impostazione è meglio?

    1. Utilizzando haproxy come bilanciatore di carico e nginx come server web?
    2. Utilizzando nginx come bilanciatore di carico e server web?
    3. Utilizzo di haproxy con apache?

    Il mio setup sarebbe 2 server separati con i seguenti installati: bilanciere del carico, server web, PHP, MySQL per leggere

    1 server separato per la scrittura MySQL che poi replica al 2 slave MySQL per la lettura.

    Cosa ne pensi?

  • Reindirizzare, modificare gli URL o redirect HTTP a HTTPS in Apache - Tutto quello che hai sempre cercato di sapere sulle regole di Mod_Rewrite ma avevo paura di chiedere
  • Come calcolare il valore MaxClient in apache?
  • Guida utente semplice / Tutorial per Apache httpd?
  • Autenticazione fallback se mod_auth_kerb non riesce
  • Come iniettare il codice HTML in each pagina HTML consegnata?
  • Come bloccare i Ragni / Scrapers dal nome host / dominio REMOTE per tutti gli host virtuali in Apache?
  • One Solution collect form web for “haproxy come bilanciatore del carico e nginx come webserver?”

    Haproxy e Nginx non sono le stesse bestie: l'haproxy si occupa solo della networking e non tocca mai il filesystem . Non ti servirà mai di contenuti statici. D'altra parte, eseguirà un ordine di grandezza superiore a qualsiasi server HTTP completo come Nginx e Apache.

    Haproxy è anche un bilanciatore di carico sofisticato, è necessario disporre di un certo uso.

    Nel mio caso, userò nginx o Apache fino a 10.000 connessioni simultanee su singoli server o impostazioni banali perché fa il lavoro piacevole e tutto da solo. Per architetture più coinvolte (molti server, elevata produttività), è preferibile un loadbalancer dedicato come Haproxy.

    Nginx vs. Apache è un punto cruciale IMHO. Posso scalare sia a 10.000 concorrenti su un server decente (per esempio 4 core e 4G RAM), e se Nginx è un po 'più leggero sulle risorse, non fa la differenza dal momento che l'app (Rails, Django, PHP , qualunque sia) è il 90% del carico CPU +.

    Dico: utilizzare il server web con cui sei più comodo. OTOH è vero che googling per le ricette Apache è pieno di scherzi e richiede di leggere attentamente il doc (grande e molto buono). Come un dinosauro Apache, sono molto soddisfatto. Ma se sei nuovo al server web HTTP, suppongo che Nginx sia less intimidatorio e più fresco. Sia Apache che Nginx sono estremamente affidabili.

    Quanto a PHP, uso Apache con un lavoratore MPM e FastCGI. Semplice, efficiente. Ho documentato che molto tempo fa su http://forge.bearstech.com/trac/wiki/DebianLamp : è ancora più facile su Debian 6.0 ma non lo ho documentato.

    Il tuo setup mi sembra bene (Haproxy + Apache o Nginx, quindi PHP tramite FastCGI). È consigliabile mettere il loadbalancer su each server anteriore invece su un nodo distinto (che diventa SPOF). E è più semplice perché each nodo esegue la stessa configuration. Aggiunta di un IP non riuscito e hai finito.

    Suggerimenti per Linux e Windows Server, quali Ubuntu, Centos, Apache, Nginx, Debian e argomenti di rete.