1.
Introdução aoclustering MySQL (ndb-cluster stogare)
:
O MySQL fornece uma solução de alta confiabilidade na forma de um mecanismo de armazenamento. É seguro para transações e replica dados em tempo real. equilíbrio. Esta solução requer pelo menos três servidores de nós para obter bons resultados.
Custo:
O servidor do nó possui requisitos significativos de RAM, linearmente proporcionais ao tamanho do banco de dados;
é melhor usar uma rede Gigabit Ethernet,
mas também requer o uso de placas SCI caras do Dolphin;
Vantagens:
Pode ser usado em situações de balanceamento de carga;
pode
ser
usado em situações dealta
confiabilidade;
Desvantagens:
À medida que o banco de dados aumenta, os requisitos de RAM aumentam, portanto o custo é alto.
Velocidade:
Quase mais lento que um servidor autônomo típico (sem Gigabit Ethernet, sem placas SCI, menos restrições relacionadas ao mecanismo de armazenamento) 10 vezes.
Cenários de aplicação:
redundância, alta confiabilidade, balanceamento de carga
2. MySQL / GFS-GNBD/HA (Ativo/Passivo)
Introdução:
Se vários servidores MySQL usam discos rígidos compartilhados como armazenamento de dados, o que dizer desta solução?
GFS/GNBD pode fornecer o disco rígido compartilhado necessário.
GFS é um sistema de arquivos seguro para transações. Ao mesmo tempo, você pode fazer com que um MySQL use dados compartilhados.
Custo:
O custo de até n servidores de alto desempenho, um dos quais é ativado e os outros servem como servidores de backup.
Prós:
Alta confiabilidade
Algum grau de redundância
Escalável para alta confiabilidade
Contras:
Sem balanceamento de carga
Sem redundância garantida
Não é possível dimensionar operações de gravação para
2x
a velocidade
de um servidor independente.Melhor suporte para operações de leitura.
Cenários de aplicação
exigem alta confiabilidade e aplicações de leitura intensiva
3. Introdução ao MySQL / DRBD / HA (Ativo/Passivo)
:
Se vários servidores MySQL usam discos rígidos compartilhados como armazenamento de dados, o que dizer desta solução?
O DRBD pode fornecer esse disco rígido compartilhado. O DRBD pode ser configurado para ser seguro para transações.
Ao mesmo tempo, você pode fazer com que um MySQL use dados compartilhados.
Custo:
O custo de até n servidores de alto desempenho, um dos quais está ativo e os outros servem como servidores de backup.
Vantagens:
alta confiabilidade;
certo grau de redundância
em nome da alta confiabilidade;
Desvantagens:
Sem balanceamento de carga,
sem redundância garantida,
sem escalabilidade em termos de carga de gravação,
velocidade:
equivalente a um único servidor em termos de leitura e gravação,
aplicações
que exigem alta confiabilidade e aplicações com operação intensiva de leitura
4. MySQL Write Master/Multiple MySQL Read
Introduçãoaos escravos (ativos/ativos)
:
Considere diferentes situações de leitura e gravação de conexões de banco de dados. Você pode usar um servidor mestre para operações de gravação e n servidores escravos para operações de leitura.
Custo:
Até 1 servidor de gravação de alto desempenho, vantagens de custo
de
n servidores de leitura:
alta confiabilidade de operações de leitura
;
Desvantagens:
alta confiabilidade sem operações de gravação;
balanceamento de carga sem operações de gravação;
nenhuma
escalabilidade nas operações de gravação:
o
mesmo que um servidor independente, melhor suporte em operações de leitura
;
5. Servidores MySQL autônomos (funcionalmente separados) (ativos)
Vários servidores independentes com funções separadas Eles não possuem alta confiabilidade e recursos de balanceamento de carga. Eles têm muitas deficiências óbvias e não serão considerados.
Resumo:
A solução HA recomendada pelo site oficial do MySQL é uma combinação de DRBD (esquema 3 neste artigo) e Replicação (esquema 4 neste artigo). Se o Linux Heartbeat também puder implementar a função de failover automático, neste caso descobriremos que o tempo de inatividade será bastante reduzido.