Aparentemente, replicação passiva tornada fácil com VMs:
(via Slashdot)
"The Remus project has just been incorporated into the Xen hypervisor. Developed at the University of British Columbia, Remus provides a thin layer that continuously replicates a running virtual machine onto a second physical host. Remus requires no modifications to the OS or applications within the protected VM: on failure, Remus activates the replica on the second host, and the VM simply picks up where the original system died. Open TCP connections remain intact, and applications continue to run unaware of the failure. It's pretty fun to yank the plug out on your web server and see everything continue to tick along. This sort of HA has traditionally required either really expensive hardware, or very complex and invasive modifications to applications and OSes."
links:
http://dsg.cs.ubc.ca/remus/
http://xen.org/
Notícias, apontadores, pensamentos e pesquisas do Laboratório de Sistemas Distribuídos da UFCG
Mostrando postagens com marcador Elasticidade. Mostrar todas as postagens
Mostrando postagens com marcador Elasticidade. Mostrar todas as postagens
quinta-feira, 12 de novembro de 2009
terça-feira, 21 de julho de 2009
A Elasticidade, a Escalabilidade e a Nuvem
Ricky Ho publicou em seu blog uma questão bem interessante: Como definir escalabilidade e elasticidade?
Para ele, escalabilidade é tornar possível aumentar o workload de uma aplicação adicionando mais recursos. Obviamente esta estratégia possui um limite, simplesmente adicionar mais discos, processadores ou quaisquer outros dispositivos de hardware não resolverá problemas de escalabilidade. E este é um ponto interessante, pois ele considera escalabilidade apenas como adicionar novos recursos, leia-se hardware. Não seria a escalabilidade também implementada via software, sistemas distribuídos como o Google File System, por exemplo? A resposta é sim. E estas duas formas de conseguir escalabilidade são conhecidas como escalabilidade vertical e escalabilidade horizontal, respectivamente. Este post fornece um bom esclarecimento sobre cada uma delas.
Enquanto escalabilidade visa aumentar o workload de uma aplicação, ignorando a utilização ou não-utilização dos recursos disponíveis, elasticidade refere-se à habilidade de aumentar ou diminuir os recursos necessários para a execução da aplicação, on-the-fly. Deve-se notar que: possuir elasticidade não significa ser escalável.
No embalo da carruagem, Ricky Ho também mencionou outras características de aplicações na nuvem:
Para ele, escalabilidade é tornar possível aumentar o workload de uma aplicação adicionando mais recursos. Obviamente esta estratégia possui um limite, simplesmente adicionar mais discos, processadores ou quaisquer outros dispositivos de hardware não resolverá problemas de escalabilidade. E este é um ponto interessante, pois ele considera escalabilidade apenas como adicionar novos recursos, leia-se hardware. Não seria a escalabilidade também implementada via software, sistemas distribuídos como o Google File System, por exemplo? A resposta é sim. E estas duas formas de conseguir escalabilidade são conhecidas como escalabilidade vertical e escalabilidade horizontal, respectivamente. Este post fornece um bom esclarecimento sobre cada uma delas.
Enquanto escalabilidade visa aumentar o workload de uma aplicação, ignorando a utilização ou não-utilização dos recursos disponíveis, elasticidade refere-se à habilidade de aumentar ou diminuir os recursos necessários para a execução da aplicação, on-the-fly. Deve-se notar que: possuir elasticidade não significa ser escalável.
No embalo da carruagem, Ricky Ho também mencionou outras características de aplicações na nuvem:
- Statelessness: Evitar criar aplicações que armazenem estado
- Minimizar o impacto causado pela movimentação de dados durante balanceamento de carga
- Bons algoritmos para gerenciar o grau de elasticidade
Assinar:
Postagens (Atom)