Przejdź do treści
ToolSimu

SaaS, AI i chmura · Interaktywny symulator

Symulator kolejki przy limicie żądań API: ile kosztuje zewnętrzny limit w szczycie ruchu

Limit żądań wygląda niewinnie, dopóki nie nadejdzie Twoja gorąca godzina. Zobacz czas oczekiwania w kolejce, przekroczone limity czasu, nieudane zadania i koszt uaktualnienia planu, zanim odczują to klienci.

Wieża kontrolna

Liczba zadań, które produkt wysyła co miesiąc do zewnętrznego API, jedno żądanie na zadanie.

8 000 000

Ile razy wyższe jest natężenie żądań w gorącej godzinie niż średnia miesięczna. Premiery, kampanie i masowe importy go podnoszą.

3,8×

Liczba żądań na sekundę, które plan API pozwala wysyłać. Żądania ponad limit czekają w Twojej kolejce.

12

Jak długo zadanie może czekać w kolejce, zanim użytkownik lub system się podda i zadanie zakończy się niepowodzeniem.

10

Średni dochód z jednego ukończonego zadania, taki jak opłaty za użycie lub część subskrypcji, którą ono reprezentuje.

0,02 zł

Uruchamia odwrotny test warunków skrajnych oraz symulację Monte Carlo z 1000 przebiegów dla bieżącego scenariusza.

Wynik netto miesięcznie

52 681 zł

Kaskadowy przepływ domina

Każdy etap zasila kolejny. Zielony oznacza bezpiecznie, bursztynowy ostrzeżenie, a czerwony stan krytyczny.

  1. 1

    Obciążenie w szczycie

    96%

    limitu żądań wykorzystane w szczycie

    Ostrzeżenie

  2. 2

    Oczekiwanie w kolejce

    2,3

    sekund oczekiwania w szczycie

    Ostrzeżenie

  3. 3

    Nieudane zadania

    0,9%

    zadań przekracza limit czasu lub zostaje porzuconych

    Bezpiecznie

  4. 4

    Koszt niepowodzeń

    15 tys. zł

    utracony przychód, kredyty, ponowienia i zgłoszenia

    Ostrzeżenie

  5. 5

    Zysk

    53 tys. zł

    netto miesięcznie

    Bezpiecznie

Kwoty są pokazane w walucie PLN w skali poglądowej, a nie według bieżącego kursu wymiany.

Pogłębiony poradnik

Symulator kolejki przy limicie żądań API: ile kosztuje zewnętrzny limit w szczycie ruchu

Analiza branży dla zarządu

Wiele produktów opiera się na cudzym API: wysyłce e-maili, mapach, płatnościach, wzbogacaniu danych, modelach językowych. Dostawca chroni się limitem żądań, czyli pułapem liczby żądań na sekundę. W przeciętny dzień limitu nie widać. Kłopot w tym, że klienci nie przychodzą przeciętnie. Pojawiają się w czasie premiery, porannego natłoku lub masowego importu, a przez te kilka minut Twój popyt może być wielokrotnie wyższy od średniej. Zadania, których nie da się wysłać, czekają w Twojej kolejce, a kolejka, która czeka zbyt długo, staje się niepowodzeniem.

Struktura problemu to kolejka stojąca przed stałym tempem obsługi. Gdy tempo napływu jest wyraźnie poniżej limitu, czekanie jest prawie zerowe. W miarę jak wykorzystanie zbliża się do stu procent, czas oczekiwania rośnie bardzo szybko, a gdy popyt przekracza limit, zaległości rosną bez końca, aż odetną je przekroczenia limitu czasu. Dlatego zależność nie jest liniowa: kilka procent więcej ruchu przy limicie może zamienić nieszkodliwą kolejkę w lawinę niepowodzeń. Dopuszczony limit czasu decyduje o tym, ile z tego czekania możesz wchłonąć.

Model efektu domina śledzi to w pięciu krokach. Wolumen zadań i współczynnik szczytu wyznaczają obciążenie w szczycie względem limitu. Obciążenie w szczycie wyznacza czas oczekiwania w kolejce. Czas oczekiwania względem limitu czasu wyznacza udział nieudanych zadań. Nieudane zadania niosą koszt w postaci utraconego przychodu, kredytów serwisowych, ponowień i zgłoszeń. To, co zostaje po kosztach mocy obliczeniowej, planie i kosztach stałych, jest zyskiem. Niewielki wzrost współczynnika szczytu może przesunąć pierwsze pole na czerwono, a koszt niepowodzeń pojawia się w czwartym polu na długo, zanim ktokolwiek zauważy spadek miesięcznej sumy.

Góra lodowa oddziela to, ile kosztuje plan, od tego, ile kosztują niepowodzenia. Nad linią wody są moc obliczeniowa i sam plan API. Pod nią znajdują się przychód z zadań, które nigdy się nie zakończyły, kredyty należne na mocy umów o poziomie usług, moc obliczeniowa zmarnowana na ponowienia, które znów zawodzą, oraz zgłoszenia do wsparcia, które klienci otwierają, gdy coś nie dociera. Razem często przewyższają cenę wyższego planu, który by im zapobiegł. Użyj symulatora, aby znaleźć obciążenie, przy którym niepowodzenia zaczynają przeważać nad kosztem uaktualnienia.

Wzory i założenia metodyczne

Model działa w ujęciu miesięcznym. Natężenie napływu w gorącej godzinie to liczba zadań podzielona przez liczbę sekund w miesiącu, pomnożona przez współczynnik szczytu. Kolejka jest traktowana jak pojedynczy serwer, którego tempem obsługi jest limit żądań. Wykorzystanie to natężenie napływu podzielone przez limit. Udział zadań szczytowych czekających dłużej niż limit czasu jest szacowany na podstawie ogona kolejki, a gdy popyt przekracza limit, dodawany jest udział przeciążenia. Około jedna trzecia zadań trafia w okna szczytowe, a niewielki bazowy poziom błędów obowiązuje przez cały czas.

Natężenie napływu w szczycie
λ = zadania ÷ 2 592 000 × współczynnik szczytu
Żądania na sekundę w oknie szczytowym, wyliczone z wolumenu miesięcznego.
Wykorzystanie
ρ = λ ÷ limit
Część limitu żądań wykorzystana w szczycie. Powyżej 100% kolejka rośnie bez ograniczeń.
Udział niepowodzeń w szczycie
przeciążenie + (1 − przeciążenie) × ρ × e^(−limit × (1 − ρ) × limit czasu)
Zadania odrzucone z powodu przeciążenia plus te, które czekają dłużej niż limit czasu.
Nieudane zadania
F = zadania × (35% × niepowodzenia w szczycie + 0,4%)
Niepowodzenia w oknach szczytowych plus niewielki bazowy poziom błędów przez cały czas.
Zysk netto
Netto = (zadania − F) × wartość − moc obliczeniowa − plan − ponowienia − kredyty − zgłoszenia − koszty stałe
Wynik miesięczny. Punkt krytyczny to miejsce, w którym osiąga on zero.

Kaskadowa elastyczność

Limit żądań i współczynnik szczytu to najbardziej elastyczne parametry, ponieważ udział niepowodzeń zależy od tego, jak blisko stu procent jest wykorzystanie. Przy tej granicy niewielka zmiana ma duży skutek, a daleko od niej zmiana ledwo ma znaczenie. Przychód na zadanie i liczba zadań skalują całą linię dochodów. Limit czasu ma największe znaczenie, gdy obciążenie jest tuż poniżej limitu, gdzie cierpliwość zamienia długą kolejkę w ukończoną pracę.

Trzy rzeczywiste studia przypadku

Start na własnych środkach

Młody produkt dobrze poniżej swojego limitu

Produkt wysyła półtora miliona zadań miesięcznie w małym planie, z umiarkowanymi szczytami i hojnym limitem czasu. Każde zadanie dobrze zarabia, a kolejka rzadko się tworzy. Wczytaj ten scenariusz, aby zobaczyć, że niski limit jest w zupełności wystarczający, dopóki wolumen jest mały, i jak mało kosztują niepowodzenia.

Skalowanie w średniej firmie

Duży wolumen w dużym planie

Platforma wysyła dwadzieścia osiem milionów zadań miesięcznie w planie z wysokim limitem żądań. Szczyty są kontrolowane, a wykorzystanie pozostaje umiarkowane, więc niepowodzenia są rzadkie, a plan to niewielki udział w przychodzie. Wczytaj ten scenariusz, aby zobaczyć, dlaczego płacenie za zapas przepustowości jest tanie przy dużym wolumenie.

Kryzys typu czarny łabędź

Kampania uderza w mały limit

Kampania marketingowa generuje osiemnaście milionów zadań ze szczytami dziewięciokrotnie wyższymi od średniej, przy limicie dziesięciu żądań na sekundę i pięciosekundowym limicie czasu. Wykorzystanie przekracza sto procent i większość zadań w szczycie kończy się niepowodzeniem. Wczytaj ten scenariusz, aby zobaczyć, jak nieudane zadania, kredyty i ponowienia niwelują cały miesiąc.

Macierz wskaźników branżowych

WskaźnikStrefa zagrożeniaŚrednia branżowaCzołowe 10% najlepszych
Wykorzystanie limitu żądań w szczyciePowyżej 95%60–80%Poniżej 60%
Stosunek szczytu do średniej liczby żądańPowyżej 72–4Poniżej 2
Zadania kończące się niepowodzeniem lub przekroczeniem czasuPowyżej 4%0,5–1,5%Poniżej 0,5%
Oczekiwanie w kolejce względem limitu czasuPowyżej 60%10–30%Poniżej 10%
Plan API jako udział w przychodziePowyżej 15%3–8%Poniżej 3%

Zmienne i dźwignie

Zadania miesięcznie

Liczba zadań, które produkt wysyła co miesiąc do zewnętrznego API, jedno żądanie na zadanie.

Dźwignia: Zwiększaj wolumen dopiero wtedy, gdy limit i kolejka udźwigną gorącą godzinę, ponieważ dodatkowe zadania podnoszą szczyt, którego nie możesz obsłużyć.

Stosunek szczytu do średniej

Ile razy wyższe jest natężenie żądań w gorącej godzinie niż średnia miesięczna. Premiery, kampanie i masowe importy go podnoszą.

Dźwignia: Spłaszcz szczyty dzięki zaplanowanym partiom, priorytetom i rozłożeniu importów na cały dzień, bo to gorąca godzina decyduje o niepowodzeniach.

Limit żądań

Liczba żądań na sekundę, które plan API pozwala wysyłać. Żądania ponad limit czekają w Twojej kolejce.

Dźwignia: Zestaw cenę następnego progu planu z niepowodzeniami, które usunie; blisko pełnego obciążenia niewielkie podniesienie limitu zapobiega dużej części przekroczeń czasu.

Limit czasu kolejki

Jak długo zadanie może czekać w kolejce, zanim użytkownik lub system się podda i zadanie zakończy się niepowodzeniem.

Dźwignia: Daj dłuższy limit czasu zadaniom niepilnym, a krótkie zachowaj dla zadań interaktywnych, ponieważ cierpliwość to darmowa przepustowość.

Przychód na zadanie

Średni dochód z jednego ukończonego zadania, taki jak opłaty za użycie lub część subskrypcji, którą ono reprezentuje.

Dźwignia: Podnieś ceny lub dodaj plan priorytetowy, aby zadania, które najbardziej potrzebują limitu, również za niego płaciły.

Jak korzystać z tego symulatora

  1. 1Wpisz miesięczną liczbę zadań i oszacuj stosunek szczytu do średniej na podstawie logów żądań.
  2. 2Ustaw limit żądań obecnego planu i limit czasu, który dopuszcza Twój produkt.
  3. 3Dodaj przychód na ukończone zadanie.
  4. 4Kliknij „Znajdź mój punkt krytyczny”, aby zobaczyć, ile ruchu lub jak niski limit zepchnie zysk do zera.
  5. 5Porównaj obecny plan z uaktualnieniem i gładszymi szczytami w horyzoncie 24 miesięcy.

Błędy, których należy unikać

  • Planowanie według średniego ruchu. Limit jest osiągany w najbardziej obciążonych minutach, więc dobieraj plan na podstawie szczytów, a nie średniej miesięcznej.
  • Ponawianie bez wycofywania (backoff). Ponowienia dokładają obciążenia do kolejki, która już zawodzi, i mogą zamienić wolną godzinę w awarię.
  • Traktowanie nieudanego zadania wyłącznie jako utraconej sprzedaży. Kredyty, zgłoszenia do wsparcia i zmarnowana moc obliczeniowa mogą kosztować więcej, niż zadanie zarobiło.
  • Ignorowanie wzrostu. Plan, który pasuje przy dzisiejszym wolumenie, po jednym dobrym kwartale może pracować na dziewięćdziesięciu pięciu procentach wykorzystania.

Najczęściej zadawane pytania

Dlaczego kolejka tak się pogarsza w pobliżu limitu?

Ponieważ niewielkie losowe skoki nie zdążą zostać obsłużone, zanim nadejdą kolejne. Czas oczekiwania rośnie stromo, gdy wykorzystanie zbliża się do stu procent.

Czy dłuższy limit czasu jest zawsze lepszy?

Nie dla zadań interaktywnych, w których użytkownicy nie będą czekać. W pracy w tle to darmowa przepustowość, ponieważ cierpliwość pochłania skok ruchu.

Czy po prostu kupić największy plan?

Rzadko. Porównaj koszt następnego progu z niepowodzeniami, które usunie, i rozważ najpierw wygładzenie szczytów, co często jest tańsze.

Dlaczego część zadań jest liczona jako szczytowa?

Prawdziwy ruch jest nierównomierny. Model zakłada, że około jedna trzecia zadań trafia w okna szczytowe, co jest ostrożną wartością ogólną, którą możesz dostosować, zmieniając współczynnik szczytu.

Jak znaleźć punkt krytyczny?

Kliknij „Znajdź mój punkt krytyczny”. Narzędzie przesuwa każdy parametr w stronę gorszego końca zakresu i podaje wartość, przy której miesięczny zysk spada do zera.

Jak dokładne jest to narzędzie?

To edukacyjny model kolejkowy z prostymi założeniami, a nie porada inżynieryjna ani finansowa. Zmierz swoje rzeczywiste logi żądań i sprawdź aktualne limity oraz cenniki dostawcy.

To edukacyjny model planistyczny oparty na jawnie podanych założeniach. Nie stanowi porady finansowej, podatkowej ani prawnej. Należy zastąpić dane wejściowe własnymi liczbami, a ważne decyzje skonsultować z wykwalifikowanym specjalistą.