1.2. Scalabilità orizzontale
Gli sforzi di Red Hat per il miglioramento delle prestazioni di Red Hat Enterprise Linux 6 si concentrano sulla scalabilità. Le funzioni in grado di migliorare le prestazioni vengono valutate principalmente in base al loro impatto sulla piattaforma in presenza di diversi carichi di lavoro — cioè, dal solo web server al mainframe del server farm.
Concentrandosi sulla scalabilità, Red Hat Enterprise Linux è in grado di mantenere una certa versatilità per diversi tipi di carichi di lavoro e scopi. Allo stesso tempo ciò significa che, con l'aumento del carico di lavoro, la riconfigurazione dell'ambiente del server è un processo meno proibitivo (in termini di costo e ore di lavoro) e più intuitivo.
Red Hat apporta miglioramenti al Red Hat Enterprise Linux sia sulla scalabilità orizzontale che per la scalabilità verticale; tuttavia la scalabilità orizzontale è quella presa più in considerazione. Il concetto dietro alla scalabilità orizzontale è quello di usare computer standard multipli per distribuire carichi di lavoro molto grandi e migliorare così le prestazioni e l'affidabilità.
In un server farm tipico i computer standard sono server rack-montati 1U e server blade. Ogni computer standard può avere una dimensione minima simile ad un sistema con due socket, anche se alcuni server farm utilizzano sistemi molto grandi con un numero maggiore di socket. Alcune reti di livello enterprise presentano un mix di sistemi grandi e piccoli; in questi casi, i sistemi grandi rappresentano server ad elevate prestazioni (per esempio server del database) mentre i sistemi più piccoli rappresentano server per applicazioni specifiche (per esempio server di posta o web).
Questo tipo di scalabilità semplifica la necessità di espandere l'infrastruttura informatica: una azienda di dimensioni medie con un carico di lavoro appropriato avrà bisogno di due server pizza box per soddisfare i propri requisiti. Con l'aumentare del numero di impiegati e del volume di lavoro ecc, i requisiti informatici aumentano sia in volume che in complessità. Una scalabilità orizzontale permette di aggiungere semplicemente macchine supplementari con una configurazione (nella maggior parte dei casi) simile a quella precedentemente implementata.
Riassumendo, la scalabilità orizzontale aggiunge un livello di astrazione in grado di semplificare l'amministrazione dell'hardware del sistema. Sviluppando una piattaforma Red Hat Enterprise Linux in grado di avere una scalabilità orizzontale, sarà possibile avere un miglioramento delle capacità e delle prestazioni dei servizi IT, aggiungendo semplicemente macchine facilmente configurabili.
1.2.1. Elaborazione parallela
Gli utenti possono trarre beneficio dalla scalabilità orizzontale di Red Hat Enterprise Linux non solo perchè essa semplifica la gestione hardware del sistema; ma anche perchè rappresenta una filosofia di sviluppo idonea dato il trend corrente di sviluppo hardware.
Considerate che le applicazioni enterprise complesse presentano migliaia di compiti da eseguire simultaneamente con diversi metodi di coordinamento. Nel passato i computer avevano un processore single-core per affrontare tutti questi compiti, virtualmente tutti i processori al giorno d'oggi hanno core multipli. Quindi i computer moderni utilizzano core multipli in un singolo socket, trasformando i desktop con socket singoli o portatili in sistemi con processori multipli.
Dal 2010 i processori AMD e Intel dispongono da due a sedici core prevalentemente in server blade e pizza box, i quali possono contenere al giorno d'oggi fino a 40 core. Questi sistemi ad elevate prestazioni e con un costo contenuto, rendono disponibili sistemi con una vasta gamma di caratteristiche e capacità nel mainstream.
Per avere maggiori prestazioni ed utilizzare il sistema al meglio delle capacità, ogni core deve essere occupato. Ciò significa che sarà necessario avere 32 compiti separati in esecuzione per trarre vantaggio da un server blade a 32-core. Se una infrastruttura blade presenta dieci blade a 32-core, allora la struttura stessa è in grado di processare un minimo di 320 compiti simultaneamente. Se questi compiti fanno parte di un evento singolo, essi devono essere coordinati.
Red Hat Enterprise Linux è stato sviluppato per adattarsi bene ai diversi trend di sviluppo hardware, e rendere sempre disponibile le migliori prestazioni possibili. Sezione 1.3, «Sistemi distribuiti» affronta le diverse tecnologie disponibili per trarre il maggior beneficio dalla scalabilità orizzontale di Red Hat Enterprise Linuxl.