sql >> Databáze >  >> NoSQL >> MongoDB

Běžící meteor v kupě a změny v reálném čase

Při spouštění více procesů serveru Meteor je třeba zvážit dva hlavní problémy.

  1. Zájem o relace klienta. Klienti používají knihovnu SockJS k připojení zpět k serveru Meteor, obvykle pomocí strategie dlouhého dotazování, která se k serveru připojuje vždy tak často. Proces serveru uchovává stav spojený s každým klientem. Je tedy důležité, aby připojení daného klienta mezi servery neodskakovalo, jinak si server bude myslet, že mluví s novým klientem a znovu odešle celý stav předplatného.

  2. Koordinace zrušení platnosti databáze. Kdykoli klient zadá zápis do databáze, proces serveru spustí přepočet a odešle aktualizace všem dalším postiženým klientům. Ale klienti připojení k jinému serveru neuvidí změnu, dokud tento proces serveru nespustí 10sekundovou smyčku dotazování Mongo. U některých aplikací je v pořádku, že většina klientů zaostává o 10 sekund. Pokud vaše aplikace vyžaduje něco více v reálném čase, budete muset implementovat vlastní meziprocesovou komunikaci mezi procesy serveru Meteor.



  1. MongoDB běží, ale nelze se připojit pomocí shellu

  2. OpenSSL nebylo nalezeno na MacOS Sierra

  3. Vytvořte superuživatele v mongo

  4. Jest a Redis (problém testů jednotek s mezipamětí databáze)