Recomendações para selecionar os serviços e recursos certos
Aplica-se a esta recomendação da lista de verificação de eficiência de desempenho bem arquitetada: Power Platform
Educação Física:03 | Selecionar os serviços corretos. Os serviços e recursos devem oferecer suporte à sua capacidade de atingir as metas de desempenho da carga de trabalho e acomodar as alterações de capacidade esperadas. As seleções também devem pesar os benefícios de usar recursos da plataforma ou criar uma implementação personalizada. |
---|
Este guia descreve as recomendações para selecionar serviços apropriados para sua carga de trabalho. As recomendações a seguir ajudam você a escolher os serviços que melhor atendem aos requisitos e demandas de sua carga de trabalho. Ao usar serviços projetados para lidar com os requisitos da carga de trabalho, você garante que a carga de trabalho atenda às metas de desempenho. Se você escolher serviços inadequados para sua carga de trabalho, talvez os serviços não lidem com as demandas de sua carga de trabalho. Serviços insuficientes podem levar a tempos de resposta lentos, gargalos ou falhas de carga de trabalho.
Definições
Termo | Definição |
---|---|
Região | Um perímetro geográfico que contém um conjunto de datacenters. |
Recurso | Uma única entidade ou componente que você pode criar, configurar e utilizar em um provedor de serviços de nuvem. |
Service | Um produto ou oferta de um provedor de serviços de nuvem. |
Serviço de armazenamento | Um serviço que fornece armazenamento para objetos, blocos e arquivos. |
Estratégias-chave de design
Os serviços escolhidos devem estar alinhados com as metas de desempenho da carga de trabalho e ser adaptáveis às necessidades futuras de capacidade. À medida que a carga de trabalho se expande ou evolui, os serviços usados devem corresponder aos seus padrões de desempenho sem exigir grandes ajustes. Considere o equilíbrio entre os recursos da plataforma e as implementações personalizadas. Os recursos da plataforma fornecem soluções imediatas, mas as opções personalizadas oferecem personalização precisa. É comum combinar ambas opções na solução geral, com opções personalizadas direcionadas para preencher lacunas específicas nos recursos internos da plataforma. Suas seleções de serviço devem ser inovadoras e adaptadas às suas necessidades específicas, levando em consideração as compensações entre conveniência e personalização.
Compreender requisitos da carga de trabalho
Compreender os requisitos da carga de trabalho refere-se a entender as demandas técnicas e funcionais de uma carga de trabalho. Essa análise ajuda a determinar os recursos, o armazenamento, a rede e outras especificações necessárias para executar a carga de trabalho. O alinhamento dos serviços às necessidades específicas de uma carga de trabalho ajuda a evitar o provisionamento excessivo ou a subutilização de recursos.
Avalie as necessidades e características de sua carga de trabalho para determinar os requisitos e alinhar seus requisitos de carga de trabalho às suas metas de desempenho em cada camada. Você deve considerar as restrições ou dependências. Ao compreender seus requisitos de carga de trabalho, você pode tomar decisões informadas. Você pode determinar a infraestrutura certa e implementar estratégias para lidar com picos de carga ou variações na demanda.
Atender metas de desempenho. Selecione serviços que permitem que você atinja as metas de desempenho para sua carga de trabalho. Certifique-se de que um serviço possa oferecer suporte às necessidades de desempenho e que você possa monitorar seu desempenho. Colete dados de desempenho para componentes críticos.
Considere as restrições organizacionais. Familiarize-se com as restrições que sua organização pode ter sobre os serviços que você implanta. Considere estas restrições ao projetar sua solução.
Considere os requisitos de conformidade e segurança. Os requisitos de conformidade e segurança podem afetar os serviços e as configurações selecionadas por você. Verifique se um serviço escolhido atende aos requisitos relacionados a armazenamento, criptografia, controles de acesso, logs de auditoria e locais de dados.
Considere as habilidades da equipe. Sua equipe cria e mantém cargas de trabalho. Serviços diferentes exigem habilidades diferentes. Escolha serviços que sua equipe saiba usar ou comprometa-se a treiná-los antes de escolher um serviço. Certifique-se de que os membros da equipe possuam a experiência e o conhecimento necessários para usar os serviços com eficiência e otimizar seu desempenho.
Compensação: Power Platform os serviços oferecem funcionalidades específicas, mas podem limitar a personalização. As cargas de trabalho que incluem componentes personalizados podem oferecer mais flexibilidade, mas podem exigir mais gerenciamento e configuração em comparação com as cargas de trabalho que usam apenas serviços do Power Platform.
Compreender os serviços
Compreender os serviços é conhecer os recursos, limites e funcionalidades das ferramentas e ofertas da plataforma. A compreensão dos serviços ajuda você a usar recursos internos, reduzindo a necessidade de soluções personalizadas complexas e melhorando a eficiência do desempenho.
Considere vários fatores e obtenha uma compreensão abrangente de um serviço antes de escolhê-lo. Pesquise e avalie serviços e ferramentas que a plataforma oferece. Determine quais serviços e ferramentas melhor se alinham aos seus requisitos de carga de trabalho.
Entender os limites de serviço
Os limites de serviço são aqueles predefinidos que os serviços definem. Os limites de serviço definem o uso máximo de recursos ou funcionalidades nesse serviço. Quando estiver familiarizado com os limites do serviço, você poderá evitar problemas como contenção de recursos, degradação de desempenho ou interrupções de serviço inesperadas. Você pode planejar e dimensionar sua carga de trabalho adequadamente. Seu planejamento leva em conta fatores como volume de dados, capacidade de processamento e requisitos de residência de dados.
Preferir recursos da plataforma
Preferir recursos de plataforma é usar funcionalidades internas fornecidas por uma plataforma para lidar com tarefas específicas sem código personalizado. Os recursos internos são projetados para lidar com tarefas específicas com eficiência em escala e são mantidos regularmente. Os recursos da plataforma permitem que você aproveite melhor os recursos de infraestrutura de nuvem porque eles são abstraídos e manipulados para você. Escolha serviços que permitem descarregar funcionalidades para a plataforma, em vez de gravar e manter seu próprio código personalizado. Em muitos casos, as soluções de plataforma como serviço (PaaS) fornecem melhor eficiência de desempenho do que o código personalizado. O código personalizado adiciona complexidade e torna a carga de trabalho propensa a problemas de desempenho. Desenvolva código personalizado somente quando os recursos do serviço não forem suficientes.
Compensação: O melhor serviço para sua carga de trabalho pode ser uma tecnologia na qual sua equipe não tem habilidade, não pode pagar ou pode exigir camadas extras de segurança. Por exemplo, um plug-in do Dataverse pode atender melhor às suas necessidades de desempenho, mas sua equipe de carga de trabalho pode estar familiarizada apenas com os fluxos da nuvem do Power Automate.
Avaliar requisitos de infraestrutura
A eficiência de desempenho dos recursos está ligada à infraestrutura em que residem. Ele torna a seleção da infraestrutura certa essencial para a eficiência do desempenho do serviço. A avaliação dos requisitos de infraestrutura envolve a identificação da região geográfica mais adequada para dar suporte à sua carga de trabalho.
As principais considerações nessa tomada de decisão incluem:
Entender regiões. Cada região corresponde a uma localização geográfica distinta. A implantação de sua solução na nuvem requer a seleção de um local de datacenter, que é onde os servidores físicos e os bancos de dados para sua solução estão localizados. Essa escolha tem implicações no desempenho devido à latência.
Modelo de implantação de região única versus de várias regiões. Uma implantação de várias regiões pode reduzir a latência para os usuários finais. No entanto, também pode aumentar o custo e a complexidade da carga de trabalho. Considere os requisitos de uso de dados; por exemplo, uma única região pode impedir a criação de vários silos de dados menores. Escolha o modelo de implantação que atende melhor às suas necessidades de carga de trabalho.
Entender os recursos disponíveis. Diferentes regiões podem oferecer recursos diferentes. Compreenda os recursos disponíveis em uma região antes de selecioná-la. Certifique-se de que uma região atenda às suas necessidades de desempenho de carga de trabalho.
Considere a latência. A latência, o tempo que os dados levam para percorrer da origem ao destino, aumenta à medida que os serviços se distanciam um do outro. Os serviços que se comunicam entre regiões podem enfrentar maior latência. Recomenda-se identificar os serviços que frequentemente se comunicam e posicioná-los dentro da mesma região. Além disso, selecionar uma região próxima à sua base de usuários principal pode minimizar a latência, oferecendo uma melhor experiência ao usuário. Se você tiver usuários em diferentes partes do mundo, talvez seja necessário comprometer a latência de alguns deles. Você deve analisar suas personas de usuário e cargas de trabalho para encontrar o equilíbrio ideal. A escolha de um local de datacenter faz parte da estratégia de ambiente.
Avaliar requisitos de rede
Avalie suas necessidades de rede para determinar os serviços e configurações de carga de trabalho apropriados. Certifique-se de que a rede possa oferecer suporte à sua carga de trabalho.
Para avaliar os requisitos de rede, certifique-se de:
Entender o tráfego de rede. Avaliar o tráfego de rede esperado para a carga de trabalho. Compreender as necessidades de transferência de dados e a frequência das solicitações de rede.
Entender os requisitos de largura de banda. Determinar os requisitos de largura de banda para a carga de trabalho. Considerar a quantidade de dados transmitidos e recebidos pela rede.
Entender a latência de rede. Avaliar a latência desejada para a carga de trabalho.
Entender a taxa de transferência. Considerar a taxa de transferência necessária para a carga de trabalho. A taxa de transferência refere-se à quantidade de dados que podem ser transmitidos através de uma rede durante um período especificado. Configurar as opções de roteamento de rede para aproveitar os benefícios da taxa de transferência de rede.
Entender as configurações que afetam o tráfego e o desempenho da rede. Configurações de firewall, configurações de gateway de dados local e similares podem afetar o tráfego e o desempenho da rede. Compreenda todos os componentes e configurações que podem ter impacto e certifique-se de que estejam configurados para suportar seus requisitos de desempenho.
Avaliar os requisitos de computação para componentes personalizados
Embora os serviços da plataforma gerenciem seus próprios requisitos de computação, você precisará avaliar os requisitos de computação de qualquer componente de nuvem personalizado implementado. A avaliação dos requisitos de computação envolve a avaliação das necessidades específicas de computação de uma carga de trabalho, incluindo fatores como tipo de instância, escalabilidade e conteinerização. Os diferentes serviços de computação têm recursos e características variadas que podem afetar o desempenho da sua carga de trabalho. Selecione o serviço de computação ideal para garantir que sua carga de trabalho seja executada com eficiência. Para obter recomendações mais detalhadas sobre a avaliação dos requisitos de computação para componentes personalizados, consulte Avaliar requisitos de computação no Azure Well-Architected Framework.
Avaliar os requisitos de balanceamento de carga
Embora os serviços da plataforma gerenciem seu próprio balanceamento de carga, é importante avaliar e considerar opções adicionais de balanceamento de carga. A escolha deve se basear em como você usa os recursos do serviço. O balanceamento de carga garante que o trabalho seja distribuído uniformemente e evita que qualquer recurso seja sobrecarregado com solicitações. O balanceamento de carga ajuda a evitar gargalos e reduzir os tempos de resposta. Avalie as várias opções de balanceamento de carga disponíveis com os serviços incluídos na solução. Revise a documentação e as ferramentas de comparação para entender os recursos.
Para selecionar as opções de balanceamento de carga mais adequadas para sua carga de trabalho, considere:
- automação robótica de processos (RPA) hosts: Avalie se deve balancear a carga entre vários hosts RPA para dimensionar automaticamente as cargas de trabalho e otimizar as automações não assistido.
- Gateways local: Use opções de balanceamento de carga para evitar pontos únicos de falha ao acessar recursos de dados local.
Avaliar requisitos do banco de dados
O banco de dados pode afetar fatores como armazenamento e recuperação de dados, processamento de transações, garantias de consistência e manipulação de dados grandes ou que mudam rapidamente. Avalie as necessidades e os critérios do seu banco de dados. Selecione um sistema de banco de dados que possa atender a esses requisitos. Avalie os requisitos do banco de dados antes de escolher um banco de dados.
Para avaliar os requisitos de banco de dados e escolher o banco de dados apropriado, execute estas etapas:
Identifique as necessidades de carga de trabalho. Compreenda os requisitos específicos de sua carga de trabalho, como volume de dados, taxas de transação esperadas, simultaneidade, tipos de dados e crescimento esperado. Avalie diferentes sistemas de banco de dados com base em suas necessidades de carga de trabalho. Por exemplo, se sua carga de trabalho requer processamento de dados em tempo real de alto desempenho, você pode escolher um sistema de banco de dados otimizado para ingestão rápida de dados e baixa latência.
Considere o modelo de dados. Determine o modelo de dados que atende melhor à sua carga de trabalho. Avalie os requisitos do banco de dados para garantir que o banco de dados escolhido ofereça suporte às estruturas de dados, relacionamentos e restrições de integridade necessários. Por exemplo, se seus dados tiverem uma estrutura altamente relacional, você pode optar por um RDBMS (sistema de gerenciamento de banco de dados relacional) que forneça suporte robusto para transações e integridade referencial. O modelo de dados pode ser hierárquico, de rede, relacional, orientado a objetos ou NoSQL. Avalie a complexidade do seu modelo de dados. Certifique-se de que o banco de dados escolhido ofereça suporte às estruturas e relacionamentos de dados necessários.
Avalie os recursos. Considere fatores como padrões de leitura/gravação, complexidade da consulta, requisitos de latência e necessidades de escalabilidade. Avalie os recursos de desempenho de diferentes sistemas de banco de dados adequadamente. Alguns bancos de dados se destacam em cargas de trabalho de leitura pesada, enquanto outros são otimizados para cargas de trabalho analíticas ou de gravação intensiva.
Avalie a carga. Considere fatores como volume de dados, taxas de transação, taxas de leitura/gravação e crescimento esperado. Escolha um banco de dados que possa lidar com a carga de trabalho prevista para garantir uma operação tranquila e evitar gargalos de desempenho à medida que sua carga de trabalho é dimensionada. Considere os requisitos de escalabilidade de sua carga de trabalho. Esses requisitos incluem o crescimento previsto de dados, o acesso simultâneo do usuário e a necessidade de dimensionamento horizontal ou vertical. Avalie as opções de escalabilidade e os recursos de disponibilidade que diferentes sistemas de banco de dados fornecem.
Avalie requisitos de armazenamento
Escolha serviços de armazenamento alinhados com seus padrões de acesso a dados, requisitos de durabilidade e necessidades de desempenho. A maioria das cargas de trabalho na nuvem usa uma combinação de tecnologias de armazenamento. Essa técnica é conhecida como abordagem de persistência poliglota. Determine a combinação apropriada de serviços de armazenamento para sua carga de trabalho. Você também pode separar os dados para evitar contaminação. Por exemplo, você pode ter contas de armazenamento separadas para monitorar dados e dados corporativos. Escolher a combinação certa e a implementação correta é importante para otimizar o desempenho do aplicativo.
Avalie os requisitos de cache
Um cache armazena dados acessados com frequência. O cache reduz a latência de acesso a dados e reduz a carga nos componentes de armazenamento de dados. Isso permite que a carga de trabalho processe mais solicitações sem dimensionamento. É comum armazenar em cache dados de carga de trabalho e conteúdo estático. Alguns serviços da plataforma armazenam dados em cache automaticamente para aumentar o desempenho. Adicione cache adicional para melhorar o desempenho e reduzir o consumo geral de solicitação de API.
Avalie os requisitos de lógica de negócios
Escolha como implementar sua lógica de negócios com base em seus requisitos funcionais, de desempenho e de reutilização. O Power Platform oferece muitas opções para executar a lógica de negócios; por exemplo, fluxos de nuvem do Power Automate, plug-ins low-code ou code-first e regras de negócios. A maioria das cargas de trabalho usará uma combinação de diferentes opções.
Para avaliar como implementar a lógica de negócios, considere:
Equipe habilidades. Sua equipe cria e mantém cargas de trabalho. Serviços diferentes exigem habilidades diferentes. Escolha serviços que sua equipe saiba usar ou comprometa-se a treiná-los antes de escolher um serviço. Certifique-se de que os membros da equipe possuam a experiência e o conhecimento necessários para usar os serviços com eficiência e otimizar seu desempenho. Por exemplo, o desenvolvimento plug-ins do Dataverse exigirá que sua equipe de carga de trabalho escreva .NET ou código Power Fx.
Abordagem lógica. Avalie se há etapas na lógica que exigem interação humana, como por meio de um processo de aprovação ou de uma resposta de formulário, e, em caso afirmativo, determine se todas as etapas podem ser executadas sem interação humana. Por exemplo, você pode usar Aprovações do Power Automate se a interação humana for necessária, mas optar por usar um plug-in do Dataverse para que a lógica seja executada perfeitamente como parte da operação de dados do Dataverse quando a interação humana não for necessária.
Integração. Revise seu diagrama de arquitetura e considere com quais sistemas sua carga de trabalho precisa se integrar. Avalie as opções de integração e considere o impacto no desempenho e na confiabilidade. A integração em tempo real pode oferecer benefícios imediatos aos usuários, mas pode afetar o desempenho e a confiabilidade. Usar abordagens assíncronas, como Power Automate, ou publicar Eventos do Dataverse em uma fila para processamento posterior, pode melhorar o desempenho e a confiabilidade. No entanto, esses métodos não fornecem feedback imediato aos usuários.
Complexidade. Considere a complexidade de sua lógica e avalie se ela pode ser dividida em etapas separadas. Por exemplo, para usar regras de negócios para validar campos obrigatórios, formatos de dados e intervalos, em vez de implementar a lógica em um aplicativo de tela ou script personalizado. Para cálculos simples baseados em valores existentes, você pode usar campos calculados ou cumulativos , e para cálculos mais complexos use um plug-in do Dataverse.
Reutilização. Identifique e reutilize a lógica para melhorar a consistência e a manutenção. Considere se você precisa reutilizar a lógica de negócios de vários pontos da carga de trabalho. Por exemplo, a lógica de plug-in do Dataverse pode ser chamada de aplicativos e automações, enquanto se você colocar a lógica de negócios no aplicativo de tela, não poderá reutilizá-la.
Lembre-se de que a escolha depende de seus requisitos específicos, complexidade de carga de trabalho e necessidades de integração. Avalie cada opção com base nos objetivos do projeto e no contexto organizacional. Considere se o uso da lógica poderia ajudar mais do que apenas um único projeto. Se puder, ajuste sua abordagem para oferecer o máximo de benefícios.
Avaliar a capacidade de resposta
Lembre-se de que os usuários julgam o desempenho por suas expectativas, não por medidas objetivas. Você pode melhorar o desempenho percebido com técnicas que não necessariamente aceleram processos, mas tornam a experiência do usuário mais suave. Por exemplo, o uso de processamento assíncrono não torna uma tarefa concluída mais rapidamente, mas mantém a interface do usuário responsiva, permitindo que o usuário faça outras coisas.
Para avaliar a capacidade de resposta:
- Considere se deseja projetar para processamento síncrono, assíncrono ou em segundo plano (em lote).
- Considere o crescimento dos dados ao longo do tempo. À medida que mais dados fluem pelo sistema, talvez seja necessário ajustá-los para manter os mesmos tempos de resposta.
- Considere quais dados armazenar em cache na página ou aplicativo em vez de recuperá-los em tempo real sempre que a página for carregada.
Facilitação do Power Platform
Noções básicas sobre requisitos: use o Azure Monitor para coletar e analisar dados da sua carga de trabalho. O Monitor fornece informações sobre o desempenho e a integridade de suas cargas de trabalho, permitindo que você identifique e solucione problemas.
Compreendendo e avaliando serviços: analise os serviços da plataforma para determinar se eles atendem aos seus requisitos de desempenho. O Power Platform oferece diversos serviços que alcançam o mesmo resultado. Você tem a flexibilidade de alinhar sua escolha de serviço às suas necessidades de desempenho, conjunto de habilidades da equipe e requisitos de custo.
Informações relacionadas
- Verifique a capacidade e a taxa de transferência da rede para clientes
- Conceitos avançados de monitor
- Considerações de desempenho para Power Apps
- Entenda as fases de execução do aplicativo Canvas, o fluxo de chamadas de dados e o monitoramento de desempenho
- Planeje, dimensione e mantenha uma solução de gateway crítica para os negócios
- Use os plugins low-code em Dataverse
- Use plug-ins para estender processos de negócios
- Dataverse fórmula, colunas calculadas e de rollup usando código
- Trabalhar com colunas de fórmula em Dataverse
- Aplicar lógica de negócios em Microsoft Dataverse
- Microsoft Dataverse eventos empresariais
Lista de verificação Eficiência de Desempenho
Consulte o conjunto completo de recomendações.