Come prevenire il caricamento di IO sotto Linux per la visualizzazione di video?

Attualmente sto servendo video di conferenze tramite Nginx su 3 server; 4 core, abbastanza memory (nessun swap utilizzato) e RAID-10 con 8 unità per server. Purtroppo iostat -xd 1 mi dà il 100% su tutti i 3 server e iotop mostra Nginx che mangia 99-100%.

Ho pensato a FS distribuiti (ma quale e mi aiuterà?); tutti gli altri modi per impedirlo senza acquistare solo nuovi server (con tutti gli overhead coinvolti …)?

  • Come faccio a montare una "partizione protetta GPT" in Windows XP?
  • Dimensione diversa Linux per df e du per la partizione radice
  • Performance HP SA - preghiamo di valutare
  • Apache o NGINX per PHP?
  • Perché sto ottenendo le performance di scrittura ZFS slow and jumpy?
  • Simulare che un disco rigido non funziona in Virtual Box
  • Si noti che non è ansible montare i video in memory; ci sono troppi e sono troppo grandi. La distribuzione non è anche ok per mettere solo pochi nella memory.

    One Solution collect form web for “Come prevenire il caricamento di IO sotto Linux per la visualizzazione di video?”

    Il mio task è quello di build sisthemes commerciali VoD commerciali di grandi size (> 1m utente) e, a less che non sia ansible utilizzare il multicast / anycast e non utilizzare un CDN, hai una sola opzione e che è quello di scalare i sisthemes di storage e di networking per gestire il massimo IO concorrente carico necessario.

    Certamente la memorizzazione locale, come ti accorgerai, può aiutare ma posso sempre dimensionare i nostri streamer per assumere zero caching. Ovviamente i nostri casi di utilizzo saranno diversi, ma se si dispone di un catalogo video relativamente piccolo potresti considerare di mettere i tuoi contenuti su volumi basati su SSD e / o su storage flash basati su PCIe come il kit FusionIO (ci sono altri produttori di questo tipo di cosa in questi giorni ma come FIO sono stati i primi sul block che sono quelli che conosco e fiducia meglio). Quando abbiamo costruito la mia prima piattaforma significativa di questo tipo abbiamo finito usando letteralmente decine di migliaia di dischi SAS da 2,5 GB da soli 72 GB per assicurarci di avere abbastanza funzionalità di lettura random, perché è ciò di cui hai bisogno, la logica dice che ti importerebbe di più sulla performance sequenziale perché i contenuti video sono solo file di grandi size, ma quando hai tante persone a suonare diversi video da diversi punti di avvio questo tipo di caching praticamente esce dalla window, hai bisogno delle migliori performance di lettura random che puoi get. anche importnte per assicurarsi di avere un path efficiente dal disco alla port di networking, non c'è un modo semplice per ottimizzarlo, ma per capire i dischi / controller / bus / NIC e driver.

    Cambiamenti del file system non sono più probabili per farti passare questo problema a proposito.

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