MWSE 2 Version | İçerik #11
Labels
No Label
No Milestone
No project
No Assignees
1 Participants
Notifications
Due Date
No due date set.
Depends on
#13 Notify System
saqut/MWSE
#15 Pasif Sync | Pasif eşitleme
saqut/MWSE
Reference: saqut/MWSE#11
Loading…
Reference in New Issue
No description provided.
Delete Branch "%!s(<nil>)"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
MWSE 2. Versionun amacı
3. parti sunucuların MWSE ile iletişime geçebilmesi
Sadece Clientlerin birbirleri arasında iletişimi sağlamak yerine sunucu ve kendi kullanıcıları arasında stabil ve yüksek hızlı iletişimi sağlamak için köprü olarak kullanımını için geliştirme yapılacak
Böylece diğer sunucularda https üzerinden get/post atarak mwse ile iletişime geçebilir ve websocket desteklemesi gerekmez
Notify System | Bildirim eşitleme
Sunucudan ve diğer clientlerden gelen mesajların kullanıcı aktif olarak bağlı olmadığı ve bağlandıktan sonrada iletilebileceği senaryolarda kullanılabilen bir özellik olacaktır.
İletilmek istenen mesajlar geçici olarak depolanır, kullanıcı bağlı ise hemen değil ise ilk fırsatta iletilir
Sunucu bildirime bir iz (id veya uuid) bırakabilir bunun sonucunda bildirimin iletilip iletilmediğini daha sonra aynı iz ile sorgulayarak alabilir
Notiy Suit System | Bildirim eşitleme
Notify System'e benzer bir sistemdir ancak buna ek olarak bildirim olarak gönderilen paketin karşılığı olarak clientden yanıt alınabilir ve alınan cevap sunucuya geri iletilir.
Suit sistemde sunucu bildirimin durumunu sorgulamaz bunun yerine mwse bildirim iletildikten ve gerekiyorsa yanıtını aldıktan sonra 3. taraf sunucuy manuel tetikler
Pasif Sync | Pasif eşitleme
Clientlerin bir tablo veya bir dizi verileri kendi aralarında yüksek hızla eşitlemesi, veri üzerinde ekleme ve okuma yapabilmesi için api sağlanarak tüm clientlerden toplanan verileri kendi aralarında hızla eşitlemesi için bir alt yapı kurulacak
Bunun için tüm clientlerden alınan veriler ortak bir havuzda depolanarak tüm clientler kendi aralarında tamamen eşit olana kadar veri iletişimi gerçekleştirilecek. Hepsi eşit olduğuna havuza alınan tüm veriler depodan silinir ve işlem tamamlanmış olur
Bu durumda clientler yanlızca ekleme ve okuma yapabilirler, pasif okuma durumunda iletilen veriler düzenlenmez, değişen veriler diğer clientlere bildirilmez
Akif Collection | Aktif eşitleme
Clientlerin bir tablo veya bir dizi verileri kendi aralarında ortak bir veritabanında CRUD işlemleri yapmalarına olanak tanır, yapılan tüm işlemler diğer clientlere bildirilir
Tüm clientler bu verinin bir kopyasını saklar ve tamamen güncel olana kadar herhangi bir işlem yapmalarına olanak tanınmaz
Veri tutarlılığı için aynı anda yapılan değişiklikler sunucuya ulaşma zamanına göre önceliklendirilir ve diğer clientın güncelleme isteği reddedilir edilir.
MWSE 2 için çözülmesi gereken sorunlar
Credentials sorunu
WebServer ile Client arasındaki ilk iletişimi sağlarken bağlanan clientin o sunucuda oturum açmış veya hizmet alan vb. kullanıcı olup olmadığını doğrulamak gerekiyor.
Limiting Backend / Overloading Backend | Sunucu aşırı yüklenmesi veya sunucu sınırlamaları
Clientlerin birbirleri arasındaki ilettikleri mesajlar herhangi bir sınırlamaya tabi değildir ancak sunucularda durumlar farklı olabilir.