duzluge cikan arap ati1
profili

  • eba'yı scale etmeye çalışan arkadaşlara tavsiyeler

    1-) avc(advanced video coding) yerine svc(scalable video codec) kullanın. avc protokolünde gönderilen her stream'in kendine ait bitrate'i olur, birden fazla bitrate göndermek istersen birden fazla stream de göndermen gerekir.

    2-) svc denilen şey aslında yine tek bir stream fakat birden çok katmana sahip, bu sayede her stream ile 1.2 mbs'e kadar çıkabilirsiniz, bu sayede kullanıcının ağ koşullarını kendi koşullarına uydurmaya çalışmak yerine, bunu yazılım içerisinde(svc hallediyor), resolution ve bitrate'i ayarlayabilir hale geliyorsunuz, eskiden bu sadece asıc kullanılarak yapılabiliyordu.

    3-) zoom'un kullandığına benzer bir multimedia routing kullanmak, bu avc'nin en geleneksel problemlerinden birisi ve zoom'un da avc yerine svc'yi tercih etmesinin en temel nedeni, mr(multimedia routing) sayesinde transcodingi tamamen keserek gecikmeyi düşürüp scalingi arttırabiliyorsunuz.

    4-) zoom'un da kullandığı multimedia routing sayesinde websocketları direkt kullancılar arasında paylaştırmak yerine, kullanıcı kendi görüntüsünü cloud'a gönderip orada diğer kullanıcıların internet koşullarına göre oradaki katmanlardan birisine dahil olup(katmanlar stream edilen görüntü kalitesi) buradan dağıtım yapılıyor, her şeyi zoom daha kullanıcıya ulaşmadan daha infrastructure'da halletmiş oluyor. tabi dolar bu seviyedeyken bu kadar fazla cloud servisine para ödemek zor olur tabii ki, imam yetiştirmeye devam(developer arkadaşlara kesinlikle bir isyan değil bu).

    5-) bir qos(quality of service) worker'ı çalıştırıp kullanıcının ve cloud servisinin o anki durumuna göre packet loss, cpu, jitter vs gibi değerleri process edip ona göre sistemi güvenli bir şekilde downscale etmek en mantıklısı gibi duruyor.

    6-) yukarıda çalıştırdığımız worker sayesinde kendi bandwith videonun kalitesini otomatik olarak downsize edip, downstream bandwith'te yüklü data göndermeye çalışıp kullanıcıya gecikme yansıtmaktansa ve servera yüklü bir process bindirmektense direkt infrastructure'da bunu halledip daha düşük bir video gönderilebilir (yine zoom böyle yapıyor).

    7-) ux kasmaya çalışıp udp'e forse etmektense udp'in uygun olmadığı durumlarda sırasıyla https ve http'ye düşülebilir yine bu kullanılacak bir worker sayesinde kolayca uygulanılabilir.

    not: bazı yazar arkadaşlar bilgilendirdi, zaten zoom altyapısı kullanıyorlarmış ve konferansa katıldıkları anda çökmüyormuş burayı kadar olan kısmı cahilliğime verin. zoom tercihi ise aslında çok doğru, dünyada video yayınlarına seviye atlatan bir altyapı kurdular, şimdi asıl sorum ise böyle bir şeyin yükü bile kendilerinde değilken bu sistem nasıl çöküyor?