notificationserver/readme.md

46 lines
3.0 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

## Collection
Verileri depolayıp TAMAMINI herkese dağıtıp bir süre sonra geçersiz olacak veriler için kullanılır. Genel kullanım amacı cihazları birbirleri arasında eşitlemek için kullanılabilir.
Collectionun açılma durumuna göre tüm cihazlar okuma ve yazma işlemi yapabilir
Hızlı eşitleme ve dağıtma görevleri için iyidir
- pagination özelliği vardır
- eventsource tüm verileri hızlıca aktarır
- Geçerlilik tarihine göre collection'un tamamı silinir
- Tek yönlüdür okuyan cihazlar feedback dönemezler
## Events
Tüm verileri kanallar üzerinden hızlıca herkese aktarır. Bu özellike bir bildirimi belli kanallar üzerinden tüm cihazları haberdar etmek için kullanılabilir.
Bu durum için yüksek sayıda cihazlara düşük aciliyeti olan bildirim göndermek için iyidir
- Tarihli sistemdir belli bir tarihin sonrasında gerçekleşen olayları bildirir
- Bağlantıyı sağlayanlar hangi olayları dinleyeceklerini belirtirler ve yanlızca o olayları haberlerini alırlar
- Eventlerden sunucuya aksine bir rapor toplanabilir
- Temelde servis tarafında throttle uygulanır ve tüm olaylar dinleyicilere belirli periotlar ile dağıtılır
- Eventler tüm cihaza ulaştığı an veya geçerlilik süresi bittiğinde eventler silinir.
- Çift yönlüdür okuyan cihazlar veri hakkında feedback dönebilirler, feedbackler yavaşça sunucuya iletilir
## Notification
Temel amacı çok fazla veriyi yavaşça en güncelden başlayarak en eskiye doğru tüm cihazlara dağıtmaktır. Temel olarak eventler ile arasındaki bir gruba değil nokta atışı bir veya aynı kullanıcı tarafından kullanılan birden fazla cihaza iletmektir.
Sunucu tarafından etiketlenen tüm kullanıcılara veriyi iletir
Mesaj tüm kullanıcılara iletildiğinde veriyi siler, iletilmediğinde geçerlilik tarihi bitene kadar depolar
Belli bir hedefi olan bildirimleri cihazlara iletmek için iyidir
- Bağlanan cihazlar kendileri hakkında ayrıntılı bilgi verirler
- Notificationu gönderen sunucu hangi kesime veya kişiye göndereceğini bildirir ancak depolanırken tek tek depolanır
- Veri iletildiği an silinir veya iletilmediğinde bir süre sonra silinir
- Çift yönlüdür okuyan cihazlar veri hakkında feedback dönebilirler ve ayrıca sistem bildirimin iletildiğinide ayrıca tutabilir. Cihazların gönderdiği veriler sunucuya otomatik iletilmez, bunun yerine sunucu gelip alması gerekir
-----------
Notification sistemi kullanıcıya veri iletme konusunda tembel davranır, verilerin hedef kitlesinin hesaplanması ve iletilmesi geciktirilebilir ancak bu işlem dakikalar en kötü durumda saatler sürer. Notification sistemi genel olarak CPU dostudur ve binlerce veriyi yavaş yavaş eritecek şekilde tasarlanmıştır. Ve ayrıca duruma göre kişiye bir dakikada en fazla 10 veya 15 adet bildirim gönderir, böylece cihazı boğmaz
Events sistemi genel olarak sisteme bağlı veya yakın zamanda bağlanacak kişileri hızlıca harekete geçirecek şekilde tasarlanır genelde cihazlar bağlandıkları anda evetleri hızlıca almaya başlarlar