Disponibilidade está relacionada com a confiabilidade de um aplicativo. Se um aplicativo não está disponível para uso quando necessário, então é improvável que possa cumprir os seus requisitos funcionais.
Disponibilidade é relativamente fácil de especificar e medir. Em termos de especificações, muitas aplicações de TI devem estar disponíveis pelo menos durante o horário comercial. Como não há horário comercial on-line, a maioria dos sites da Internet desejam 100% de disponibilidade.
Falhas em aplicações podem levá-las a estar indisponíveis. Falhas geram impacto sobre a confiabilidade de um aplicativo, que geralmente é medida pelo tempo médio entre falhas. O período de tempo de indisponibilidade é determinado pela quantidade de tempo que leva para detectar falhas e reiniciar o sistema. Consequentemente, as aplicações que exigem alta disponibilidade, devem procurar minimizar ou, de preferência, eliminar o único ponto de falha. Pode-se procurar mecanismos que detectam automaticamente a falha e reinicia os componentes com falha.
Replicar componentes é uma estratégia testada e comprovada para alta disponibilidade. Quando um componente replicado falhar, a aplicação pode continuar executando usando réplicas que ainda funcionam. Isso pode levar a degradação do desempenho, enquanto um componente está com falha, mas a disponibilidade é não comprometida.
Um sistema de banco de dados é o exemplo de um sistema recuperável. Saiba+
Quando um servidor de banco de dados falhar, ele não estará disponível até que ele se recupere. Isto significa reiniciar o aplicativo do servidor, e resolver quaisquer transações que estavam em execução no momento da falha. Questões interessantes para aplicações recuperáveis são como as falhas são detectadas e a recuperação começa (de preferência automaticamente), e quanto tempo leva para se recuperar antes de o serviço ser restabelecido completamente. Durante o processo de recuperação, a aplicação é indisponível, e, portanto, o tempo médio de recuperação é uma métrica importante a considerar.
X