<< Chapter < Page | Chapter >> Page > |
Quando afirmamos que um sistema é confiável, estamosafirmando que esse sistema é capaz de manter algum nível de desempenhoquando funcionando sob circustâncias determinadas. A confiabilidadeé normalmente definida sob períodos de tempo. Ou seja, dizer apenasque o SASF deve ser confiável não é suficiente. Temos, por exemplo,que dizer que o SASF é capaz de transmitir vídeos para 6 mil usuáriossimultâneos sob condições normais durante 99% do ano e para mil usuáriossimultâneos durante o 1% do ano reservado para o período de manutençãodos servidores. Vale observar que, para uma loja online , faz mais sentido que a medida deconfiabilidade seja a de servir aos seus usuários com o tempo deespera das operações de compra e busca de 50 milissegundos duranteperíodos normais do ano, mas, durante as semanas próximas ao Natal, tero tempo de espera das mesmas operações em torno dos 150 milissegundos,uma vez que o número de usuários simultâneos nessa época do anoaumenta consideravelmente.
A confiabilidade pode ainda ser dividida nas seguintescaracterísticas:
No caso do SASF, o módulo de transmissão de vídeopode verificar quantas conexões estão abertaspara um mesmo destinatário. Uma grande quantidade deconexões para um mesmo destinatário pode significarum ataque ou mesmo um bug no reprodutor de vídeo no lado do cliente que,eventualmente, pode consumir todos os recursos disponíveispara streaming . Assim, ao detectar esseproblema, o SASF pode recusar abrir novas conexões paraesse cliente, prevenindo-se de um problema maior, comouma completa parada por DoS O Denial of Service ou DoS ocorre quando o sistemanão pode atender a novas requisições porque todosos seus recursos estão sendo consumidos, possivelmentedevido a um ataque de um ou vários agentes maliciosos.
A forma mais comum de melhorar o grau de tolerância afaltas em um serviço web é fazer com que não dependade um único recurso. Seja esse recurso hardware,como um único processador, roteador ou disco rígido,seja esse recurso software, como depender de um únicobanco de dados, um único serviço de cadastro ouum único serviço de inventário. Assim, o SASF possui seusmódulos replicados em diferentes servidores. Desta maneira,ele evita a dependência de um único recurso, ouo chamado ponto único de falhas e pode continuar a funcionar mesmo que um desses módulospare por completo. Note que para a replicação funcionar,devem ser adicionados à arquitetura módulos responsáveispela verificação de estado dos servidores e, assimque forem detectados problemas em algum servidor, o tráfegopossa ser redirecionado para réplicas sadias. Paraisso ser possível, há ainda outras complicações, comoa manutenção da consistência de estado entre o servidororiginal e sua réplica.Falaremos mais sobre a eliminação do ponto únicode falhas quanto estivermos tratando das diversas técnicaspara a obtenção de atributos de qualidade.
No SASF, podemos medir o tempo de substituiçãode um servidor de streaming pelo tempo da detecção da falha, somado ao tempode inicialização do servidor e somado ao tempo de redirecionamentodas requisições de transmissão. Uma forma de ter o tempototal de recuperação minimizado seria manter o servidorauxiliar ligado, apenas esperando a detecção dafalha do servidor principal. No entanto, essa decisãosignificaria mais custos, uma vez que seriam doisservidores ligados ao mesmo tempo, gastando mais energia,diminuindo a vida útil do hardware e possivelmenteconsumindo licenças de software.
Notification Switch
Would you like to follow the 'Arquitetura de software' conversation and receive update notifications?