Sobes.tech
Senior

Jaké jsou vlastnosti protokolu DDP?

sobes.tech AI

Odpověď od AI

DDP (Protokol distribuovaných dat) je protokol používaný v Meteor.js pro synchronizaci dat v reálném čase mezi klientem a serverem.

  • Publikace-předplatné (Pub/Sub): Server "publikuje" kolekce dat a klienti se na ně mohou "přihlásit". Při změnách dat na serveru jsou automaticky "pushovány" na přihlášené klienty.
  • RPC (Vzdálené volání procedur): Klienti mohou volat funkce definované na serveru, jako by byly lokální.
  • Optimistické UI: Klient může ihned zobrazit změny v uživatelském rozhraní, jako by již nastaly na serveru. V případě konfliktů nebo chyb se UI vrátí do předchozího stavu.
  • Se stavem: DDP udržuje stav spojení mezi klientem a serverem, což umožňuje synchronizaci dat v reálném čase.
  • Používá WebSockets: Obvykle funguje přes WebSockets pro efektivní výměnu dat v reálném čase, ale může také používat jiné mechanismy, pokud WebSockets nejsou dostupné.
  • Formát JSON: Data jsou přenášena ve formátu JSON.

Příklad volání RPC metody na klientovi:

// Volání serverové metody 'addTask' s parametry
Meteor.call('addTask', 'Nový úkol', function(error, result) {
  if (error) {
    console.error('Chyba při přidávání úkolu:', error);
  } else {
    console.log('Úkol úspěšně přidán, ID:', result);
  }
});