Wpis użytkownika wojtek-x w Hejto
wojtek-xKoneser
0piorunówChwilę temu hejto.pl znów zaliczyło kosmonautę.
Czy naprawdę aż tak trudno jest utrzymać serwis pokroju hejto.pl online 24/7? Trzeba testować na produkcji? Serio?
Komentarze (10)
Ale jak definiujesz 'ruch' samo wyświetlanie stron?
@zuchtomek Oj szerokie pojęcie dość. Najprostszy podział to ruch zewnętrzny i wewnętrzny. Zewnętrzny to - jak pisesz - podpięcia klientów pod stronę (jej wyświetlenia, pobieranie zasobów POSTem/GETem, itp), ruchem wewnętznym jest każda komunikacja wewnątrz danej infrastruktury sieciowej (bez "wyjścia" poza tą sieć), czyli w ramach hejto.pl ruchem wewnętrznym będzie np. komunikacja frontu (UI) z bazą danych, ale też zalogowanie się developera do servera developerskiego (po SSH czy tam RCP).
Inny podział (stosowany przez AWS w celach billingowych) to ruch in/out. Za ruch przychodzący nie pobierają opłat; tym co generuje (nie małe) opłaty jest ruch wychodzący (https://aws.amazon.com/blogs/architecture/overview-of-data-transfer-costs-for-common-architectures/)
@wojtek-x Ale jak definiujesz 'ruch' samo wyświetlanie stron? To raczej na pewno testują, problemy zaczynają się kiedy poza odczytywaniem bazy danych zaczynasz w niej zapisywać (tworzyć posty, wrzucać filmy i zdjęcia itd.) i tak, są to testy funkcjonalne, ale to właśnie one potrafią czasem przeciążyć bazę - samo testowanie ruchu przetestuje Ci tylko przepustowość łącza, a to nie ono jest wąskim gardłem, tylko zapewne działanie samego 'silnika'.
"o to za problem utowrzyć nowe zasoby i podpiąć je pod ELB?"
tak jak pisałem wyżej - głównie finansowy zapewne
Daj im 10k
@zuchtomek Już lecę z kasą, czekaj ( ͡° ͜ʖ ͡°)
Gdyby wszystko dało się przetestować skryptami..
Akurat ruch da się jaknajbardziej.
sam co chwilę próbuję tu klikać w różne miejsca żeby zobaczyć co się stanie,
Przeprowadzasz tzw. testy funkcjonalne UI. Bardzo dobrze. Ale testy funkcjonalne to jest mały procent (o ile nie odsetek) całości testów.
Co z tego, że masz load balancer jak nie masz za nim więcej zasobów?
Są podobno na AWS; co to za problem utowrzyć nowe zasoby i podpiąć je pod `ELB`? Nawet nie trzeba ręcznie tego robić; jest coś co nazywa się `Autoscaling`.
@wojtek-x Gdyby wszystko dało się przetestować skryptami..
Scenariuszów jest 100x tyle co użytkowników, sam co chwilę próbuję tu klikać w różne miejsca żeby zobaczyć co się stanie, wrzucam, po kilkanaście zdjęć do artykułów itd. itp.
Load balancer jest, mają też cloudflare - ale te rozwiązania na dużą skalę - dużo kosztują. Co z tego, że masz load balancer jak nie masz za nim więcej zasobów?
Daj im 10k na kartfole do serwerów co miesiąc to problemy może się skończą.
Testowanie też nigdy Ci nie zasymuluje prawdziwego obciążenia,
@zuchtomek Są biblioteki robiące dokładnie to; symulujące dowolny typ/skalę ruchu. Wszystkie na GitHubie. Co za problem zastosować?
przy takiej skali wzrostu ruchu w krótkim czasie - tak
Ale bierzesz pod uwagę, że to nadal jest projekt amatorski, który od paru dni zaliczył ogromny skok popularności i ruchu?
@Fearaneruial & @Frasier_Crane no właśnie nie. Zapoznajcie się z czymś co nazywa się `Load Balancer`
"Czy naprawdę aż tak trudno jest utrzymać serwis pokroju hejto.pl online 24/7?"
@wojtek-x tak
przy takiej skali wzrostu ruchu w krótkim czasie - tak
@wojtek-x widzę że większość twojej aktywności tutaj to narzekanie na hejto, jak się nie podoba to nara i po problemie
Ale bierzesz pod uwagę, że to nadal jest projekt amatorski, który od paru dni zaliczył ogromny skok popularności i ruchu?
@wojtek-x Jak nie trzeba optymalizować kosztów to łatwo jest przeskalować zasoby tak, żeby się nie zatykały.
Sztuką jest dobrać wydajność do potrzeb.
Testowanie też nigdy Ci nie zasymuluje prawdziwego obciążenia, a do tego na prodzie dochodzą domorośli testerzy i boty..
Kurwens