Sobes.tech
Senior

DDP protokolunun xüsusiyyətləri nələrdir?

sobes.tech Süni İntellekt

AI-dan cavab

DDP (Paylaşılan Məlumatlar Protokolu) Meteor.js-də müştəri və server arasında real vaxtda məlumatların sinxronizasiyası üçün istifadə olunan protokoldur.

  • Yayım-Abunəlik (Pub/Sub): Server "yayım" edir məlumat kolleksiyalarını və müştərilər onlara "abunə" ola bilər. Serverdə məlumatlar dəyişdikdə, onlar avtomatik olaraq "push" edilir abunə olan müştərilərə.
  • RPC (Uzaqdan Prosedur Çağırışı): Müştərilər serverdə təyin olunmuş funksiyaları yerli kimi çağıra bilər.
  • Optimist UI: Müştəri istifadəçi interfeysində dəyişiklikləri dərhal göstərə bilər, sanki artıq serverdə baş verib. Konflikt və ya səhvlər olarsa, UI əvvəlki vəziyyətə geri qaytarılır.
  • Statuslu: DDP müştəri və server arasındakı əlaqənin vəziyyətini saxlayır, bu da məlumatların real vaxtda sinxronizasiyasına imkan verir.
  • WebSockets istifadə edir: Əsasən WebSockets üzərində işləyir, bu da real vaxtda məlumat mübadiləsini effektiv edir, lakin WebSockets mövcud deyilsə, digər mexanizmlər də istifadə oluna bilər.
  • JSON formatında: Məlumatlar JSON formatında ötürülür.

Müştəri tərəfində RPC metodunun çağırılması nümunəsi:

// 'addTask' server metodunu parametrlərlə çağırmaq
Meteor.call('addTask', 'Yeni tapşırıq', function(error, result) {
  if (error) {
    console.error('Tapşırığın əlavə olunmasında xəta:', error);
  } else {
    console.log('Tapşırıq uğurla əlavə olundu, ID:', result);
  }
});