Share via


Modelar um aplicativo no Malha do Serviço

Este artigo fornece uma visão geral do modelo de aplicativo do Azure Service Fabric e descreve como definir um aplicativo e um serviço por meio de arquivos de manifesto.

Entenda o modelo de aplicativo

Um aplicativo é uma coleção de serviços membros que executam determinadas funções. Um serviço executa uma função completa e autônoma e pode iniciar e executar independentemente de outros serviços. Um serviço é composto de código, configuração e dados. Para cada serviço, o código consiste em binários executáveis, a configuração consiste em configurações do serviço que podem ser carregadas no tempo de execução e os dados consistem em dados estáticos arbitrários a serem consumidos pelo serviço. Cada componente nesse modelo hierárquico de aplicativo pode ser atualizado e transformado em outra versão independentemente.

O modelo de aplicativo Service Fabric

Um tipo de aplicativo é uma categorização de um aplicativo e consiste em um pacote de tipos de serviço. Um tipo de serviço é uma categorização de um serviço. A categorização pode ter diferentes definições e configurações, mas a funcionalidade núcleo permanece a mesma. As instâncias de um serviço são as diferentes variações de configuração de serviço de um mesmo tipo de serviço.

Classes (ou "tipos") de aplicativos e serviços são descritas por meio de arquivos XML (manifestos de aplicativo e manifestos do serviço). Os manifestos descrevem aplicativos e serviços, e são os modelos de aplicativos que poderão ser instanciados a partir do repositório de imagens do cluster. Manifestos são abordados detalhadamente em Manifestos de aplicativos e serviços. A definição de esquema dos arquivos ServiceManifest.xml e ApplicationManifest.xml é instalada com o SDK e as ferramentas do Service Fabric em C:\Arquivos de Programas\Microsoft SDKs\Service Fabric\schemas\ServiceFabricServiceModel.xsd. O esquema XML é documentado em documentação do esquema ServiceFabricServiceModel.xsd.

O código para instâncias de aplicativo diferentes será executado como processos separados, mesmo quando hospedadas pelo mesmo nó do Service Fabric. Além disso, o ciclo de vida de cada instância do aplicativo pode ser gerenciado (por exemplo, atualizado) independentemente. O diagrama a seguir mostra como os tipos de aplicativo são compostos de tipos de serviço, que, por sua vez, são compostos de código, configuração e pacotes de dados. Para simplificar o diagrama, somente os pacotes de código/configuração/dados de ServiceType4 são mostrados, embora cada tipo de serviço inclua alguns ou todos os tipos de pacote.

Tipos de aplicativos do Service Fabric e tipos de serviço

Pode haver uma ou mais instâncias de um tipo de serviço ativo no cluster. Por exemplo, instâncias de serviço com estado, ou réplicas, alcançam alta confiabilidade replicando o estado entre as réplicas localizadas em diferentes nós do cluster. Essencialmente a replicação fornece redundância para que o serviço esteja disponível mesmo se um nó em um cluster falhar. Um serviço particionado divide ainda mais seu estado (e padrões de acesso a esse estado) pelos nós do cluster.

O diagrama a seguir mostra a relação entre aplicativos e instâncias de serviço, partições e réplicas.

Partições e réplicas dentro de um serviço

Dica

É possível exibir o layout de aplicativos em um cluster usando a ferramenta Service Fabric Explorer disponível em http://<yourclusteraddress>:19080/Explorer. Para obter mais informações, consulte Visualizando o cluster com o Service Fabric Explorer.

Próximas etapas