• Quando falamos sobre um sistema de computação em nuvem, é de grande ajuda dividi-lo em duas seções: o front end e o back end. Eles se conectam através de uma rede, geralmente a Internet. O front end é o lado que o usuário do computador, ou cliente, vê. O back end é a seção "nuvem" do sistema.

O front end inclui o computador do cliente (ou rede de computadores) e a aplicação necessária para acessar o sistema de computação em nuvem. Nem todos os sistemas de computação em nuvem tem a mesma interface para o usuário. Serviços baseados na Web, como programas de e-mail, aproveitam navegadores de internet já existentes, como o Internet Explorer e o Firefox. Outros sistemas têm aplicações próprias que fornecem acesso à rede aos clientes.


Você está virtualmente servido

Na maior parte do tempo, servidores não rodam em plena capacidade. Isso significa que há um poder de processamento sem uso indo para o lixo. É possível enganar um servidor físico, fazendo-o pensar que ele é múltiplos servidores, cada um rodando com seu próprio sistema operacional. A técnica é chamada de virtualização de servidor. Ao maximizar a saída de servidores individuais, a virtualização de servidor reduz a necessidade de máquinas físicas.

No back end do sistema estão vários computadores, servidores e sistemas de armazenamento de dados que criam a "nuvem" de serviços de computação. Na teoria, um sistema de computação em nuvem inclui praticamente qualquer programa de computador que você possa imaginar, do processamento de dados aos videogames. Cada aplicação tem seu próprio servidor dedicado.
Um servidor central administra o sistema, monitorando o tráfego e as demandas do cliente para assegurar que tudo funcione tranquilamente. Ele segue um conjunto de regras chamadas protocolos e usa um tipo especial de software chamado middleware. O middleware permite que computadores em rede se comuniquem uns com os outros.
Se uma empresa de computação em nuvem tem muitos clientes, é provável que haja uma alta demanda por muito espaço de armazenamento. Algumas companhias requerem centenas de dispositivos de armazenamento digitais. Sistemas de computação em nuvem precisam de pelo menos o dobro do número de dispositivos de armazenamento exigidos para manter todas as informações dos clientes armazenadas. Isso porque esses dispositivos, assim como todos os computadores, ocasionalmente saem do ar. Um sistema de computação em nuvem deve fazer uma cópia de toda a informação dos clientes e a armazenar em outros dispositivos. As cópias habilitam o servidor central a acessar máquinas de backup para reter os dados que, de outra forma, poderiam ficar inacessáveis. Fazer cópias de dados como um backup é chamado redundância.



Grades, nuvens e utilidades
A computação em nuvem está intimamente relacionada com a computação em grade e com a computação  sob demanda. No sistema de computação em grade, computadores da rede são capazes de acessar e usar os recursos de qualquer computador da rede. No sistema de computação em nuvem, isso apenas se aplica ao back end. Computação sob demanda (utility computing) é um modelo de negócios em que uma empresa paga à outra para acessar as aplicações do computador ou o armazenamento de dados.