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);
}
});