Pergunte a qualquer gerente de projeto, desenvolvedor ou líder de equipe. Várias coisas podem dar errado durante o ciclo de vida do desenvolvimento de software, como falhas, ataques cibernéticos e interrupções no sistema. Falhas inesperadas estão fadadas a acontecer, o que pode interromper todo o processo, limitar os resultados e desperdiçar recursos vitais.
A engenharia do caos é uma disciplina que estuda como essas falhas podem ocorrer e fornece metodologias para ajudar a evitá-las. Ao compreender a causa raiz das falhas, os engenheiros do caos podem desenvolver planos para evitá-las ou atenuá-las.
O chaos engineering não se trata de criar o caos; trata-se de usar experimentos controlados para identificar possíveis pontos de falha em um sistema antes que eles causem problemas. Ao fazer isso, os engenheiros do caos podem evitar proativamente interrupções e outras interrupções.
A engenharia do caos é a prática de injetar intencionalmente falhas em um sistema para testar sua resiliência. O objetivo é identificar possíveis pontos de falha e corrigi-los antes que causem uma interrupção real ou outra interrupção.
Há muitas maneiras de criar o caos em um sistema, mas o mais importante é ter um plano. Sem um plano, é fácil criar mais problemas do que resolver. Ao criar seu plano, você precisará decidir o que deseja testar e como fará isso. Assim que tiver um plano, você poderá começar a fazer experimentos.
Os desenvolvedores de software podem introduzir facilmente o chaos engineering em seus fluxos de trabalho pelo siteOpenText™ LoadRunner™ Professional. Essa solução não apenas aproveita o teste de carga de desempenho, mas também facilita a execução de outros experimentos de chaos engineering diretamente no software.
Ao criar esses eventos em um ambiente controlado de não produção, é possível testar como o sistema reage e identificar possíveis problemas.
Depois de identificar os possíveis pontos de falha, você pode começar a trabalhar para atenuá-los. Isso pode envolver a adição de monitoramento ou registro para ajudar a identificar problemas quando eles ocorrerem ou a alteração do seu projeto para torná-lo mais resistente a falhas.
Os princípios da engenharia do caos são:
Planejar: Decida o que você quer testar e como vai fazer isso. O objetivo aqui é criar uma hipótese. O que poderia dar errado em um sistema? Quais são as possíveis vulnerabilidades que podem ser exploradas?
Faça experimentos: Injete falhas no sistema e veja como ele reage. A injeção de falhas é simplesmente o processo de introduzir um problema em um sistema existente para expor uma vulnerabilidade. Basicamente, é o hábito de "jogar uma chave inglesa" em um sistema de propósito para ver o que acontece.
Analise: Use os dados de seus experimentos para identificar possíveis pontos de falha.
Mitigar: Se encontrar um problema, você pode encerrar o experimento para se concentrar em atenuá-lo. Caso contrário, você pode dimensionar o experimento até chegar ao ponto crucial do problema.
Então, por que uma empresa quebraria as coisas de propósito? É necessário expor as falhas do sistema para torná-lo mais robusto. O chaos engineering pode ajudá-lo a evitar interrupções e outras interrupções. Ao identificar possíveis pontos de falha e corrigi-los antes que causem problemas, você pode evitar interrupções de forma proativa.
Além disso, o chaos engineering proporciona vários benefícios técnicos, comerciais e para o cliente. O principal benefício é permitir que as empresas criem produtos mais fortes que terão impacto em seus resultados e atenderão às expectativas dos clientes.
O chaos engineering é diferente dos testes em alguns aspectos importantes. O chaos engineering se concentra em encontrar possíveis pontos de falha antes que eles causem problemas. Os testes, por outro lado, concentram-se em verificar se o sistema funciona conforme o esperado. Em resumo, o chaos engineering é proativo, enquanto o teste é reativo.
Os engenheiros do caos trabalham para evitar interrupções e outras interrupções, introduzindo e corrigindo falhas controladas antes que elas possam causar problemas em um ambiente real. Essas falhas controladas ajudam a identificar quais partes do sistema são mais resistentes e quais precisam de mais trabalho. Os testes só podem verificar se o sistema funciona depois de concluído.
LoadRunner O Professional é uma ferramenta que se concentra principalmente em um tipo específico de engenharia de desempenho. Usando o LoadRunner Professional, você pode implementar testes de carga avançados que simulam condições de uso reais, o que pode ajudá-lo a identificar possíveis problemas de desempenho de carga antes que eles causem problemas.
Mas o LoadRunner Professional não é apenas uma ferramenta de engenharia de desempenho que executa testes de carga em um ambiente estável; é uma ferramenta que combina engenharia de desempenho e engenharia do caos em uma única plataforma.
LoadRunner O Professional trabalha diretamente com o Gremlin, uma renomada plataforma FaaS (failure-as-a-service, falha como serviço) que permite criar diferentes tipos de eventos de caos, como picos de CPU, latência de rede e falha de disco. Você pode organizar e iniciar facilmente os experimentos de caos do Gremlin diretamente na plataforma LoadRunner Professional e executar testes de carga com base em condições anormais.
De modo geral, o LoadRunner Professional permite que você evite proativamente as interrupções de carga durante diferentes tipos de eventos de caos. Ao identificar possíveis pontos de falha antes que eles causem problemas, essa ferramenta pode ajudar a economizar tempo, dinheiro e recursos valiosos.
Em última análise, o chaos engineering é o ímpeto de qualquer projeto de software bem-sucedido. Os desenvolvedores de software podem implementar o chaos engineering para realizar projetos que resistirão ao teste do tempo.
Por meio da parceria da OpenText com a Gremlin, o LoadRunner Professional pode testar o desempenho de sistemas sob carga e diferentes eventos de caos simultaneamente, permitindo que você encontre possíveis pontos de falha e corrija os problemas de forma proativa.
Deixe os clientes satisfeitos, fornecendo aplicativos confiáveis e de alta qualidade
Proporcionar uma experiência impecável ao cliente com testes baseados em projetos
Promova a colaboração e melhore a confiabilidade dos aplicativos com testes
Garanta a qualidade dos aplicativos com testes dimensionáveis e baseados na nuvem