MongoDB
 sql >> Base de Dados >  >> NoSQL >> MongoDB

Executando meteoro em um cluster e mudanças em tempo real


Há duas questões principais a serem consideradas ao executar vários processos do servidor Meteor.

  1. Afinidade da sessão do cliente. Os clientes usam a biblioteca SockJS para se conectar de volta ao servidor Meteor, geralmente usando uma estratégia de pesquisa longa que se reconecta ao servidor de vez em quando. O processo do servidor mantém o estado associado a cada cliente. Portanto, é importante que a conexão de um determinado cliente não salte entre os servidores, senão o servidor pensará que está conversando com um novo cliente e reenviará todo o estado da assinatura.

  2. Coordenando invalidações de banco de dados. Sempre que um cliente emite uma gravação no banco de dados, o processo do servidor executa um recálculo e envia atualizações para qualquer outro cliente afetado. Mas os clientes conectados a um servidor diferente não verão a mudança até que o processo do servidor execute o loop de pesquisa de 10 segundos do Mongo. Para alguns aplicativos, não há problema em que a maioria dos clientes fique 10 segundos atrasada. Se sua aplicação requer algo mais em tempo real, então você terá que implementar sua própria comunicação entre processos entre os processos do servidor Meteor.