Esse princípio no pilar de otimização de desempenho do Framework de arquitetura doGoogle Cloud fornece recomendações para ajudar você a planejar recursos para suas cargas de trabalho no Google Cloud. Ele enfatiza a importância de definir requisitos granulares antes de projetar e desenvolver aplicativos para implantação ou migração na nuvem.
Visão geral do princípio
Para atender aos requisitos de negócios, é importante definir os requisitos de desempenho dos aplicativos antes do design e do desenvolvimento. Defina esses requisitos da maneira mais granular possível para o aplicativo como um todo e para cada camada da pilha de aplicativos. Por exemplo, na camada de armazenamento, é preciso considerar a capacidade de processamento e as operações de E/S por segundo (IOPS) de que os aplicativos precisam.
Desde o início, planeje os designs de aplicativos pensando na performance e na escalonabilidade. Considere fatores como o número de usuários, o volume de dados e o crescimento potencial ao longo do tempo.
Os requisitos de desempenho para cada carga de trabalho variam e dependem do tipo de carga de trabalho. Cada carga de trabalho pode conter uma combinação de sistemas de componentes e serviços que têm conjuntos exclusivos de características de desempenho. Por exemplo, um sistema responsável pelo processamento em lote periódico de grandes conjuntos de dados tem demandas de desempenho diferentes de uma solução de área de trabalho virtual interativa. Suas estratégias de otimização precisam atender às necessidades específicas de cada carga de trabalho.
Selecione serviços e recursos alinhados às metas de performance de cada carga de trabalho. Não existe uma única solução ideal para a otimização de performance. Ao otimizar cada carga de trabalho, todo o sistema pode alcançar o desempenho e a eficiência ideais.
Considere as seguintes características de carga de trabalho que podem influenciar seus requisitos de desempenho:
- Arquétipo de implantação: o arquétipo de implantação selecionado para um aplicativo pode influenciar a escolha de produtos e recursos, que determinam a performance esperada do aplicativo.
- Colocação de recursos: ao selecionar uma Google Cloud região para os recursos do aplicativo, recomendamos priorizar a baixa latência para os usuários finais, cumprir as regulamentações de localidade de dados e garantir a disponibilidade dos produtos e serviços Google Cloud necessários.
- Conectividade de rede: escolha serviços de rede que otimizem o acesso a dados e a entrega de conteúdo. Aproveite a rede global, as backbones de alta velocidade, os locais de interconexão e os serviços de armazenamento em cache do Google Cloud.
- Opções de hospedagem de aplicativos: ao selecionar uma plataforma de hospedagem, é necessário avaliar as vantagens e desvantagens de desempenho de cada opção. Por exemplo, considere bare metal, máquinas virtuais, contêineres e plataformas sem servidor.
- Estratégia de armazenamento: escolha uma estratégia de armazenamento ideal com base nos seus requisitos de desempenho.
- Configurações de recursos: o tipo de máquina, IOPS e throughput podem ter um impacto significativo no desempenho. Além disso, no início da fase de design, é necessário considerar os recursos de segurança adequados e o impacto deles nos recursos. Ao planejar recursos de segurança, esteja preparado para acomodar as competências de desempenho necessárias para evitar efeitos imprevisíveis.
Recomendações
Para garantir a alocação ideal de recursos, considere as recomendações nas próximas seções.
Configurar e gerenciar cotas
Verifique se o aplicativo usa apenas os recursos necessários, como memória, armazenamento e capacidade de processamento. A alocação excessiva pode gerar despesas desnecessárias, enquanto a alocação insuficiente pode resultar em degradação do desempenho.
Para acomodar o escalonamento elástico e garantir que recursos adequados estejam disponíveis, monitore regularmente a capacidade das cotas. Além disso, acompanhe o uso da cota para identificar possíveis restrições de escalonamento ou problemas de superalocação e tomar decisões fundamentadas sobre a alocação de recursos.
Conscientizar e promover
Informe os usuários sobre os requisitos de desempenho e forneça recursos educacionais sobre técnicas eficazes de gerenciamento de desempenho.
Para avaliar o progresso e identificar áreas de melhoria, documente regularmente a performance desejada e a real. Faça um teste de carga no aplicativo para encontrar pontos de interrupção em potencial e entender como escalonar o aplicativo.
Monitorar as métricas de desempenho
Use o Cloud Monitoring para analisar as tendências das métricas de desempenho, os efeitos dos experimentos, definir alertas para métricas importantes e realizar análises retrospectivas.
O Active Assist é um conjunto de ferramentas que oferece insights e recomendações para otimizar a utilização de recursos. Essas recomendações podem ajudar você a ajustar a alocação de recursos e melhorar a performance.