Cos’è un server? A cosa serve? Se ti stai facendo queste domande, allora questo è il post giusto per te.

Scegliere un server per la tua attività è sicuramente complicato se non sai cosa sia e come funzioni. In questa guida ti spiegheremo la definizione di server nel modo più semplice possibile.

Vedremo anche a cosa serve, come funziona e vari esempi di server in modo che tu possa conoscere i concetti fondamentali per scegliere quello giusto in base alle tue necessità.

Server: definizione completa

Veniamo ora alla definizione di server. Un server è un programma per computer o un dispositivo che fornisce un servizio a un altro programma per computer e al suo utente, noto anche come client. In un data center, il computer fisico su cui viene eseguito un programma viene spesso definito server. Quella macchina potrebbe essere un server dedicato o potrebbe essere utilizzata per altri scopi.

Su Internet, il termine server si riferisce comunemente al sistema informatico che riceve richieste di file web e invia tali file al client.

Nel modello di programmazione client / server, un programma server attende e soddisfa le richieste dei programmi client, che potrebbero essere in esecuzione sullo stesso o su altri computer. Una data applicazione in un computer potrebbe funzionare come client con richieste di servizi da altri programmi e come server di richieste da altri programmi.

Come funziona un server?

Il termine server può riferirsi a una macchina fisica, una macchina virtuale o un software che esegue servizi server. Il modo in cui funziona varia notevolmente a seconda di come viene utilizzato..

Server fisici e server virtuali

Un server è semplicemente un computer utilizzato per eseguire il software del server. Le differenze con un computer desktop verranno discusse in dettaglio nella sezione successiva.

Un server virtuale è una rappresentazione virtuale di un server fisico. Ha il proprio sistema operativo e le proprie applicazioni. Questi sono tenuti separati da qualsiasi altro server virtuale che potrebbe essere in esecuzione sul server fisico.

Il processo di creazione di macchine virtuali implica l’installazione su un server di un componente software leggero chiamato hypervisor. Il compito dell’hypervisor è consentire al server fisico di funzionare come host di virtualizzazione. L’host di virtualizzazione rende le risorse hardware del server fisico, come il tempo della CPU, la memoria, l’archiviazione e la larghezza di banda dell’architettura di rete, disponibili per una o più macchine virtuali.

Una console di amministrazione offre agli amministratori la possibilità di allocare risorse hardware specifiche a ciascun server virtuale. Ciò aiuta a ridurre drasticamente i costi dell’hardware poiché un singolo server può eseguire più macchine virtuali.

Software

Un server richiede almeno due componenti software: un sistema operativo e un’applicazione . Il sistema operativo funge da piattaforma per l’esecuzione dell’applicazione server. Fornisce accesso alle risorse hardware sottostanti e fornisce i servizi di dipendenza da cui dipende l’applicazione.

Il sistema operativo fornisce anche i mezzi per i client per comunicare con l’applicazione server. L’indirizzo IP e il nome di dominio completo, ad esempio, vengono assegnati a livello di sistema operativo.

Server e computer desktop

Esistono sia somiglianze che differenze tra computer desktop e computer server. La maggior parte dei server è basata su CPU X86 / X64 e può eseguire lo stesso codice di un computer desktop X86 / X64. A differenza della maggior parte dei computer desktop, tuttavia, i server fisici spesso includono più socket CPU e memoria per la correzione degli errori. Generalmente supportano anche una quantità di memoria maggiore rispetto alla maggior parte dei computer desktop.

Poiché l’hardware del server in genere esegue carichi di lavoro mission-critical , i produttori di hardware progettano i server per supportare componenti ridondanti. Un server ad esempio potrebbe essere dotato di alimentatori e interfacce di rete ridondanti. Questi componenti ridondanti consentono al server di continuare a funzionare anche se un componente chiave si guasta.

L’hardware del server differisce dall’hardware desktop anche in termini di fattore di forma. I computer desktop moderni spesso esistono come mini tower, progettati per essere posizionati sotto una scrivania. Sebbene ci siano ancora alcuni fornitori che offrono versioni tower, la maggior parte dei server è progettata per essere montata su rack .

Questi sistemi di montaggio su rack sono descritti come aventi un fattore di forma 1U, 2U o 4U, a seconda di quanto spazio su rack occupano: un server 2U occupa il doppio dello spazio su rack di un 1U.

server rack

Un’altra differenza fondamentale tra un computer desktop e un server è il sistema operativo. Un sistema operativo desktop potrebbe essere in grado di eseguire alcune funzionalità di tipo server, ma non è progettato o concesso in licenza per sostituire un sistema operativo server.

Windows 10 , ad esempio, è un sistema operativo desktop. Alcune edizioni di Windows 10 includono Hyper-V, la piattaforma della macchina virtuale di Microsoft. Anche se Windows 10 e Windows Server possono eseguire Hyper-V, l’hypervisor di Windows 10 è destinato principalmente a scopi di sviluppo. Diversamente la versione di Hyper-V inclusa con Windows Server è progettata per eseguire macchine virtuali di produzione.

Sebbene un’organizzazione possa eseguire un server virtuale su Windows 10 Hyper-V, ci sono problemi di licenza da considerare. Inoltre, Windows Server Hyper-V include funzionalità di resilienza che non si trovano nella versione di Windows 10. Windows Server ad esempio supporta il clustering di failover e la replica della macchina virtuale.

Allo stesso modo, il sistema operativo Windows 10 può rendere i file disponibili ai dispositivi su una rete locale. Tuttavia, Windows 10 non è stato progettato per la condivisione di file su larga scala. Windows Server, invece, può essere configurato per agire come un file server completo. Nelle grandi organizzazioni, un distributed file system può essere creato su un’intera server farm allo scopo di fornire prestazioni, scalabilità e resilienza migliori di quelle che un server fisico sarebbe in grado di fornire da solo.

I vari tipi di server

I server sono spesso classificati in base ai loro scopi. Alcuni esempi sono i seguenti:

  • Un web server è un software per computer che ospita un sito web e serve le pagine o i file HTML richiesti. In questo caso, un browser web funge da client.
  • Un application server è un programma in un computer in una rete distribuita che fornisce la logica di business per un programma applicativo.
  • Proxy server è un software che funge da intermediario tra un dispositivo endpoint, ad esempio un computer, e un altro server da cui un utente o un client richiede un servizio.
  • Un game server è un computer che ospita un videogioco per un client. Questo tipo di server consente una connessione affidabile, stabile e veloce ai tuoi giochi online preferiti.
  • Un mail server è un’applicazione che riceve i messaggi di posta elettronica in arrivo da utenti locali – persone all’interno dello stesso dominio – e mittenti remoti e inoltra i messaggi di posta elettronica in uscita per la consegna
  • DNS server: il domain name system è la rubrica di Internet. Quando gli utenti digitano nomi di dominio come google.com nei browser web, DNS è responsabile della ricerca dell’indirizzo IP corretto per quei siti. I browser quindi utilizzano questi indirizzi per comunicare con i server di origine per accedere alle informazioni del sito web. Tutto questo avviene grazie ai server DNS: macchine dedicate a rispondere alle richieste DNS.
  • FTP : i server FTP spostano i file tramite gli strumenti File Transfer Protocol . I server FTP sono accessibili in remoto utilizzando programmi client FTP , che si connettono alla condivisione di file sul server, tramite le funzionalità FTP integrate del server o con un programma FTP dedicato.
  • Un server virtuale è un programma in esecuzione su un server condiviso configurato in modo tale che ad ogni utente sembri di avere il controllo completo di un server.
  • Un file server è un computer responsabile dell’archiviazione e della gestione centrale dei file di dati in modo che altri computer sulla stessa rete possano accedervi.
  • Un database server è responsabile dell’hosting di uno o più database. Le applicazioni client eseguono query di database che recuperano o scrivono dati nel database ospitato sul server.
  • Un print server fornisce agli utenti l’accesso a una o più stampanti collegate in rete o dispositivi di stampa. Funge da coda per i lavori di stampa inviati dagli utenti. Alcuni print server possono assegnare la priorità ai lavori nella coda di stampa in base al tipo di lavoro o a chi ha inviato il lavoro di stampa.
proxy server

Componenti del server

Hardware

I server sono costituiti da diversi componenti e sottocomponenti diversi. A livello hardware sono tipicamente costituiti da uno chassis per montaggio su rack contenente un alimentatore, una scheda di sistema, una o più CPU, memoria, storage, un’interfaccia di rete e un alimentatore.

La maggior parte dell’hardware supporta la gestione fuori banda tramite una porta di rete dedicata. La gestione fuori banda consente la gestione e il monitoraggio di basso livello del server, indipendentemente dal sistema operativo. I sistemi di gestione fuori banda possono essere utilizzati per accendere o spegnere il server da remoto, per installare un sistema operativo e per eseguire il monitoraggio dello stato di salute.

Sistemi operativi

Un altro componente è il sistema operativo. Un sistema operativo come Windows Server o Linux , funge da piattaforma che consente l’esecuzione delle applicazioni. Il sistema operativo fornisce alle applicazioni l’accesso alle risorse hardware di cui hanno bisogno e abilita la connettività di rete.

L’applicazione è ciò che consente al server di svolgere il proprio lavoro. Un database server ad esempio eseguirà un’applicazione di database. Allo stesso modo, un server di posta elettronica dovrebbe eseguire un’applicazione di posta.

Scegliere il server giusto 

Sono diversi i fattori da considerare durante la selezione di un server, tra cui la macchina virtuale e il consolidamento del contenitore. Quando si sceglie un server, bisogna valutare l’importanza di alcune funzionalità in base ai casi d’uso.

Anche le capacità di sicurezza sono importanti e probabilmente ci saranno una serie di funzionalità di protezione, rilevamento e ripristino da considerare, inclusa la crittografia nativa dei dati.

Se il server fa affidamento sulla memoria interna, anche la scelta del tipo di disco e della capacità è importante perché può avere un’influenza significativa su input / output ( I / O ) e resilienza. 

Molte organizzazioni stanno riducendo il numero di server fisici nei loro data center poiché la virtualizzazione consente a meno server di ospitare più carichi di lavoro. 

L’avvento del cloud computing ha cambiato anche il numero di server che un’organizzazione deve ospitare in sede. Confezionare più capacità in meno contenitori può ridurre le spese complessive, lo spazio del data center e le richieste di alimentazione e raffreddamento.