2024-07-08
한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina
Este artigo vem de Documentação oficial do Apache Seata, bem-vindo ao visitar o site oficial para ver artigos mais detalhados.
Este artigo vem deDocumentação oficial do Apache Seata, bem-vindo ao visitar o site oficial para ver artigos mais detalhados.
Durante o processo de inicialização do lado da aplicação do Seata (RM, TM), a primeira coisa a fazer é estabelecer comunicação com o lado do coordenador (TC). Este é o pré-requisito para que o Seata conclua a coordenação da transação distribuída. lado da aplicação e se comunica com o coordenador Durante o processo de estabelecimento de uma conexão do TC, ele é.Como encontrar o cluster e o endereço do coordenador de transações TC de?De novoComo obter diversas informações de configuração do módulo de configuração A respeito? Este é o foco deste artigo.
Como um componente subjacente de nível de middleware, o Seata é muito cuidadoso ao introduzir estruturas de terceiros para implementação específica. Os alunos interessados podem ter uma compreensão profunda do mecanismo SPI do Seata e ver como o Seata usa um grande número de pontos de extensão (Extensões) para. Depender da implementação específica de componentes é invertido e, em vez disso, depende de interfaces abstratas. Ao mesmo tempo, a fim de se integrar melhor ao ecossistema derivado de arquiteturas populares, como microsserviços e nativos da nuvem, Seata também usa o mecanismo SPI para implementar vários mainstream. estruturas de microsserviços, centro de registro, centro de configuração e o "líder" no mundo da estrutura de desenvolvimento Java - SpringBoot e outros se integraram ativamente Ao mesmo tempo em que garantem a arquitetura de microkernel, acoplamento flexível e escalabilidade, eles também podem "integrar-se bem" com vários componentes. ”, facilitando a introdução do Seata em ambientes que utilizam diversas pilhas de tecnologia.
Este artigo pretende estar perto de todosQuando apresentei o Seata pela primeira vez para uso experimentalcenário, na introdução a seguir, escolhaLado do aplicativoAs qualificações para são as seguintes: usarArquivo como centro de configuração e centro de registro, e com base emSpringBootcomece.
Com esta qualificação em mente, vamos mergulhar no código-fonte do Seata para descobrir.
existir Análise do processo de inicialização do cliente Seata (1) , analisamos a inicialização de TM e RM no lado da aplicação Seata e como o lado da aplicação cria um canal Netty e envia uma solicitação de registro ao servidor TC. Além disso, durante o processo de inicialização do RM, os demais módulos do Seata (centro de registro, centro de configuração, balanceamento de carga) também apareceram um após o outro, cooperando entre si para completar o processo de conexão ao Servidor TC.
Ao executar o método do Cliente para reconectar ao Servidor TC: NettyClientChannelManager.Channreconnect(), você primeiro precisaAgrupamento de transaçõesObtenha a lista de endereços de servidores TC disponíveis:
/**
* NettyClientChannelManager.reconnect()
* Reconnect to remote server of current transaction service group.
*
* @param transactionServiceGroup transaction service group
*/
void reconnect(String transactionServiceGroup) {
List