Come migliorare Windows Server 2008 R2 per gestire molte connessioni?

Finora sono stati alcuni giorni che cerco di capire come risolvere questo problema. Innanzitutto, sto eseguendo un sito web con una visione giornaliera media di 350.000. In precedenza, tutti i gestori degli annunci (click di rilevamento e impressione che each annuncio è stato pubblicato) e il contenuto sono stati pubblicati in un singolo server con le seguenti specifiche:

 Server 1
 Sistema operativo: Windows 2008 R2 64-Bit
 CPU: Intel® Core ™ i5 - 4 core
 RAM: 8 GB
 Storage: 2 x 1 TB hard disk
 Larghezza di banda: 10 TB al mese

Per migliorare la velocità del nostro sito web, ho deciso di separare lo script di gestione degli annunci su un altro server dedicato perché abbiamo più di 15 inserzionisti a 30 inserzionisti per each pagina.

  • Prestazioni del disco rispetto alle aspettative
  • Qual è la definizione tecnica di un Reame?
  • Posso trovare un ID spool di un lavoro di printing per trovarlo nella directory spool / printingnti?
  • Scopri il collo di bottiglia per il server desktop remoto di Windows (Terminal server)
  • Avvio di EC2 - come indicare quando è pronto per Windows?
  • Come faccio a sapere se il mio server Windows scambia?
  •  Server 2
     Sistema operativo: Windows 2008 R2 64-Bit
     CPU: Intel® Core ™ i5 - 4 core
     RAM: 4 GB
     Storage: 2 x 300 GB di dischi rigidi
     Larghezza di banda: 10 TB al mese
    

    Il problema
    Il problema è che Server 1 può gestire sia il contenuto che il sistema di annunci. Ora, toglierò il sistema di annunci e metterlo al Server 2 . Server 2 può servire a malapena solo un sistema di annunci.

    Test

    • Prima di tutto, ho spostato il 75% degli annunci su Server 2 . E poi, eseguire un ping al server: ping -t xxxxx . [Ho fatto il ping per 10 minuti e il seguente model simile come sotto]
     Risposta da xxxxx bytes = 32 time = 290ms TTL = 116
     Risposta da xxxxx bytes = 32 time = 289ms TTL = 116
     Risposta da xxxxx bytes = 32 time = 320ms TTL = 116
     Risposta da xxxxx bytes = 32 time = 286ms TTL = 116
     Risposta da xxxxx bytes = 32 time = 286ms TTL = 116
     Risposta da xxxxx bytes = 32 time = 348ms TTL = 116
     Risposta da xxxxx bytes = 32 time = 284ms TTL = 116
    
    • Poi, ho spostato il 100% degli annunci su Server 2 . Quindi eseguire nuovamente un ping al server. [Ho fatto il ping per 10 minuti e il seguente model simile come sotto]
     Risposta da xxxxx bytes = 32 time = 290ms TTL = 116
     Tempo scaduto per la richiesta
     Risposta da xxxxx bytes = 32 time = 320ms TTL = 116
     Risposta da xxxxx bytes = 32 time = 286ms TTL = 116
     Tempo scaduto per la richiesta
     Tempo scaduto per la richiesta
     Risposta da xxxxx bytes = 32 time = 284ms TTL = 116
    

    tentativi

    1. Aumenta MaxUserPort e TcpNumConnection
    2. Riavviare il server
    3. Aumentare le Instance MaxRequests IIS e le Instance MaxRequests

    Risorsa server

    • Solo il 10% -15% della connessione di networking viene utilizzato
    • Solo il 10% -15% della CPU è utilizzata
    • Solo il 25% della memory è utilizzata

    2 Solutions collect form web for “Come migliorare Windows Server 2008 R2 per gestire molte connessioni?”

    Beh, cominciamo. Questo è più lungo.

    Hai assolutamente sbagliato i fatti qui. Windows – persino il vecchio 2008 R2 che dovresti aggiornare ASAP – è completamente in grado di gestire un volume il mio cellulare non ha problemi di gestione.

    Così, questo lascia tre possibili aree di emissione:

    • Installazione. I driver potrebbero essere crappy. Dato che si esegue un sistema operativo obsoleto – quanto sono i tuoi driver? Aggiorna loro – questo può causare tutti i tipi di problemi.

    • Rete. Questo sembra seriamente: "La mia macchina è troppo lenta, per favore mi aiuta a rendere più veloce" quando il problema è che si spendono più tempo in un ingorgo e un reclamo sul traffico non si muove. Non è un problema di sintonia con l'auto. Il traffico 10tb non dice nulla sulla congestione della networking. Guarda le statistiche del traffico di networking sulla NIC e quindi reagisci di conseguenza – se non riescono a superare la velocità che dovrebbero essere … il tuo provider ha superato il sovraccarico. Semplice come quello.

    • Codice. Potrebbe essere necessario avere più RAM (il computer è occupato di scambiarsi in RAM invece che di elaborazione) o la codifica inesorabile utilizza tutta la tua CPU in un grado che rende il livello del kernel stack TCP non reagisce correttamente (sì, le risposte ICMP sono così basse). Questo sarebbe brutale – ma è un altro modo per controllare. Potrebbe anche essere che sovraccarichi i dischi accedendoli troppo spesso invece di memorizzare nella memory RAM, ma in qualche modo non riesco a vedere che port a ping perduti. Qualsiasi problema qui non è qualcosa in cui un amministratore può gestire, però – bisogna gettare l'hardware su di esso, o prendere un bastone e colpire il programmatore finché non lo risolve (se è un errore "stupido" di livello che mangia le performance – se non lo è, allora è molto più difficile fare gravi guadagni e potrebbe essere solo il tuo hardware di bisogno di beefier).

    Sicuramente non richiede alcuna sintonizzazione delle windows – una windowslla ben configurata può fornire un LOT in più di quello. I miei file server regolarmente ß per lunghi periodi di tempo – consegnare 4-6gigabit da una configuration relativamente stock.

    Ora, tutti i numbers che hai dato non dicono niente.

    • La CPU da 10 a 15% viene utilizzata per scambiare COULD.
    • La memory del 25% viene utilizzata probabilmente è un buon indicatore in corso, ma può continuare a significare che la CPU sta aspettando l'IO.
    • Il 10% -15% di networking è utilizzato mezzi – assolutamente niente perché è solo il TUO Lato della networking. Cosa succede al monte? Che cosa succede se il fornitore sta mettendo 20 server con 1 gigabit su un uplink da 1 gigabit dal rack e che è traboccante come l'inferno?

    L'ultimo punto è molto probabile – i pacchetti scesi sono un buon indicatore di questo. E questo non sarà visibile per te.

    Il mio consiglio … spegnere qualsiasi cosa su una macchina per un attimo, fare un test di velocità dall'esterno con un grande file statico. Vorrei scommetterti di entrare in congestione in alto.

    Tutto ciò che hai fatto finora – maxuserport, tcpnumconnection, riavvio del server, giocare con le impostazioni di IIS – è completamente fuori e non fare niente nel posto migliore. Battere un martello su una macchina lenta non risolve mai nulla – soprattutto se l'auto è lenta perché si trova in un marmellata. Annullerei tutte le modifiche e iniziare ad analizzare il problema, non solo il tuo server. Scommetterei sulla congestione di networking al momento.

    Sono i ping esterni ai due server? Se è così, prova il ping dal server uno al server due. Se i risultati sono totalmente diversi da quando si pinga esternamente, ciò mostra che il problema potrebbe non essere dovuto al server due. Inoltre, dare un'occhiata al monitor di risorse per la lunghezza della coda del disco per le unità e il tempo attivo – sono alcune informazioni che potrebbero evidenziare un problema.

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