notificationserver/readme.md

47 lines
3.7 KiB
Markdown
Raw Normal View History

2024-10-24 10:46:40 +03:00
## Collection
2024-10-24 11:06:41 +03:00
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
2024-10-24 10:46:40 +03:00
- 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.
2024-10-24 11:06:41 +03:00
Bu durum için yüksek sayıda cihazlara düşük aciliyeti olan bildirim göndermek için iyidir
2024-10-24 10:46:40 +03:00
- 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
2024-10-24 11:06:41 +03:00
Belli bir hedefi olan bildirimleri cihazlara iletmek için iyidir
2024-10-24 10:46:40 +03:00
- 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
2024-10-24 11:06:41 +03:00
- Ç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
-----------
2024-10-24 11:13:38 +03:00
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, notification sisteminde kullanıcının olumlu veya olumsuz bildirimi varsa sunucu tarafınada tembel bir şekilde iletilir
2024-10-24 11:06:41 +03:00
2024-10-24 11:13:38 +03:00
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. Eventler kullanıcıya iletildiği anda sistem event için veri üretmek için tasarlanmışsa bu sunucuya en kısa zamanda bildirilir
2024-10-24 11:06:41 +03:00
2024-10-24 11:13:38 +03:00
Collectionlar dev veri (Yaklaşık 4 milyon veri) kümleri üzerinde çalışacak şekilde tasarlanmış okuma ve dağıtma hızı en yüksek veri listesidir. Temel amaç bir listenin tamamını, cihazın bellek ve network dostu olacak biçimde veriyi aktarır. Bunu yaparken veriyi en baştan başlayarak veya en güncel veriden başlayarak indirmesini sağlayabilirsiniz