Aktywne Wpisy

heksengerg +993
Andrzej odchodzi na emeryture. Pracował w zakladzie od 1990 roku.
#pracbaza
#pracbaza
źródło: temp_file5635804188324145665
Pobierz
Miguelos +80
W takie miejsca chodźcie a nie tam gdzie 6 krewetek kosztuje 60 zł. Nie mam nic do krewetek, lubię je ale ceny w polskich "wykwintnych" restauracjach (a w szczególności napojów) to śmiech na sali. Poniżej na zdjęciu bar mleczny, schabowy z ziemniakami i surówkami + kompot 22,50 zł.
#jedzenie #gotujzwykopem #gastronomia #restauracje #polska
#jedzenie #gotujzwykopem #gastronomia #restauracje #polska
źródło: image_picker_2205EB9E-EC68-43A9-8CDB-7BBC206638D1-24590-0000039DBBF4B238
Pobierz




Jak rzeczywiście mierzyć wydajność aplikacji webowych? Mam z tym problem bo w sumie nie wiem ile requestow na sekundę to zadowalający wynik. Przyjmijmy tylko na początek parametr taki jaki requesty. Czy np 250 req/s to spoko wynik? Wiem że istnieją takie narzędzia jak locust itd ale czy one pokażą prawdziwe wyniki? Wiadomo że w rzeczywistości wygląda to potem inaczej. Jak badacie swoje web apki pod kątem wydajności?
@adam_makowski: na to już musisz sobie odpowiedzieć sam, bo "coś w miarę wydajnego" ma bardzo inne znaczenie w przypadku bloga i w przypadku dużego portalu aukcyjnego. Istnieją strony które pewnie nawet 10req/s nie potrzebują. ¯\_(ツ)_/¯
Jeżeli masz gotową apkę ustawioną na produkcyjnym serwerze to będzie to miarodajne, bo czemu miałoby nie być?
W praktyce nie ma co się specjalnie przejmować ile masz req/s, przynajmniej na etapie pisania kodu. Chyba że piszesz na przykład swoją wersję allegro albo facebooka, ale to osobna historia. ( ͡° ͜ʖ ͡°)
Jeżeli w praktyce okaże się że któryś endpoint jest za wolny to wtedy się bierzesz
Stronę ostatecznie i tak schowasz za CDNem który przyjmie na siebie 95% obciążenia
wysyłanie 250 requestów na sekundę to nie jest żaden parametr testówy wydajnościowych, tylko obciążenie które generujesz :) Mierzyć trzeba odpowiedzi na te 250 requestów. Jeżeli odpowiedź na 200 request będzie trwała 15 sekund, to na pewno jest źle. Jeżeli odpowiedź z serwera będzie trwać 1,5 sekundy to może być albo bardzo dobrze, albo przeciętnie, albo tragicznie :)
Normalnie badania wydajnościowe wyglądają tak:
- tworzymy środowisko które jest idealną
Teraz na szybko stworzylem srodowisko do produkcji, droplet na digitalocean cpu optimized 4 cpu 8gb.
Docker, Django, Nginx, Gunicorn [Uvicorn], Redis, PostgreSQL
Pusciłem loadtest na 15k requestow z iloscia 500 userów. Wynik jaki otrzymałem to widoczny na screenie.
Rozumiem to ze jest to tak na prawde tylko test na nginx, gunicornie i redisie bo zostaja najwazniejsze SQL i na to potrzeba dodatkowych testow.
Co ciekawe jak puscilem ten test i na przegladarce probowalem ogladac strone to widoki cachowanie przez redisa smigaly az milo a inne widoki juz nie cachowane mulily do kilku sekund. Ale time out nie wyrzucalo wiec jakis
źródło: comment_1593942863n3dPOXciEAxnmGFzJuEa8k.jpg
PobierzKomentarz usunięty przez autora
- Pliki statyczne na CDN to podstawa
- Stronę profilujesz bez cacheowania na redisie, na czystej aplikacji, inaczej będziesz sprawdzał wydajność redisa. Poza tym powinieneś cacheować warstwę wyżej, np na poziomie CDNa z wykorzystaniem eTagów.
- Na screenie który wrzuciłeś masz strasznie wysokie czasy odpowiedzi, średnio 3.6s? Kto będzie tyle czekał? Znajdź w googlu jak czas odpowiedzi wpływa na ilość odwiedzających na stronie i celuj mniej więcej w tę wartość. Taki wynik powinieneś mieć dla 95-99 percentyla, w tym momencie 10% użytkowników twojej strony czeka na załadowanie 7 sekund lub dłużej. Z tego co pamiętam optymalnie jest ok 2.5 sekundy.
- Zapytania do bazy danych testujesz lokalnie, głównie szukasz n+1 problem, ewentualnie czy nie pobierasz za dużo danych
Testowalem bez redisa, z redisem sa mniejsze wyniki.... Dziwne
Gunicorna uzywam wedlug zalecen 2x2+1.
dziekuje wszystkim za odpowiedzi i wskazowki
źródło: comment_1594069962ElVw3oJ9rb9nBz3GW193By.jpg
PobierzS3 nie nadaje się do serwowania plików dla użytkowników końcowych przez duże opóźnienia, dorzuć do tego Amazon Cloudfront i będziesz pan zadowolony