Budżet: 27000 UAH Termin: 17 dni
Witaj!
Aktualizacja danych co 1–60 minut dla 30–50 kanałów łatwo przekracza dzienny limit 10 000 jednostek domyślnie, szczególnie jeśli bezmyślnie wywołuje się videos.list/search.list z detalami, więc jako rozwiązanie można stworzyć osobny planifikator limitów, który wybiera metody o minimalnym koszcie (na przykład, łączyć videos.list z wcześniejszym cachem ID, nie używać search bez potrzeby);
Jeśli chodzi o agregację zapytań, należy pobierać statystyki partiami po kilka filmów i kanałów, a nie jedno wideo - jedno zapytanie + tryb fallback, kiedy przy zbliżaniu się do limitu częstotliwość aktualizacji automatycznie się zmniejsza, a pominięte sloty są logowane.
Dla 30–50 kanałów będzie 30–50 osobnych refresh-tokenów; YouTube/Google mogą je cofnąć przy zmianie hasła, podejrzanej aktywności lub przekroczeniu limitów, dlatego potrzebny jest scentralizowany menedżer tokenów. Z niezbędnych: szyfrowane przechowywanie refresh-tokenów (KMS/klucz w menedżerze sekretów, szyfrowanie AES na poziomie bazy danych),
mechanizm automatycznego re-auth: jeśli refresh-token przestaje działać, system ustawia konto w statusie "wymagana ponowna autoryzacja" i wyświetla baner w UI. I oczywiście należy wprowadzić subtelne rozgraniczenie między limitem aplikacji a limitem użytkownika oraz używać OAuth po stronie serwera z dostępem offline, jak zaleca Google.
Z poważaniem
Giorgi
Starszy inżynier oprogramowania