Hw 03 - #126
Open
KonstantinFrantz wants to merge 9 commits into
Open
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Кейс №3
Данные аккаунта:
На наш сервис приходит 500 запросов по 2 в секунду, тоесть последний запрос прийдет через 500 / 2 = 250 с. (Это можно заметить на графике в виде пересечения оранжевой линии оси абсцисс через ≈ 4:10 минуты)
Актуальный rate принимаемых сервисом оплаты запросов можно вычеслить как 5 / 4.9 ≈ 1. Тоесть при заявленной пропускной способности в 3 запроса в секунду, на самом деле платежная система в секунду может обрабатывет лишь один.
Так как входной rps 2, а принимаемый системой оплаты 1, запросы начинают копиться в "очереди" с приблизительной скоростью 1 rps. Всвязи с чем, уже через минуту от начала теста ожидание в очереди становится ≈ 50 секунд (входной rate растет постепенно), что равно времени ожидания клиента ответа. Вот почему через (45\55) + 60 ≈ 110 секунд нам начинают приходить первые client_timeout. (Заметно по поведению красного графика, начинающего стремительно расти вверх спустя ≈ 2 минуты от начала запуска теста)
К моменту отправки последнего запроса от клиента, время ожидания в "очереди" составляет +-90 секунд, после которых клиенту приходит последний ответ от системы. (Время пересечения синей линии оси абсцисс)
Время которое сервис затратит на обработку всех запросов высчитывается как 500 * 4.9 / 5 = 490 с. В то время как 250 + 60 = 310 с. - время в которое последний клиент уйдет с нашего сайта в связи превышением времени ожидания.
Получается при заданных входных параметрах все запросы клиентов обработать в срок невозможно.