Главное Авторские колонки Вакансии Образование
arrow-right Created with Sketch. Малаховский Евгений 427 0 В избр. Сохранено
Авторизуйтесь
Вход с паролем

Нагрузочное тестирование коробочного решения маркетплейса услуг

Одно из ключевых преимуществ коробочного решения является его готовность к развитию и высоким нагрузкам. Проведем замеры, тесты и сделаем выводы.
Мнение автора может не совпадать с мнением редакции

Для тестирования Мы используем хостинг от ihc, который Я и рекомендую использовать. Нагрузочное тестирование сервиса поиска исполнителей будем проводить исходя из того что страница должна загружаться не более одной секунды. Почему страницы? Потому что по факту в гибридных приложениях, коими и являются наши, в приложение загружается готовая страница экрана.

Возьмем самый базовый тариф, которые Я и рекомендую. Тариф SSD/1, 1 ядро, 1 Гб оперативной памяти, стоит 350 рублей/месяц.

По результатам замера предельная нагрузка составила:

  • 80 страниц в секунду
  • 24 000 страниц каждые 5 минут
  • 7 млн. страниц в сутки
В случае превышения нагрузки имеется возможность увеличить мощность сервера за дополнительную плату, чем Мы и воспользуемся. Добавляем мощности, тариф SSD/1, 2 ядра, 1 Гб, 450 рублей/месяц и получим результаты:
  • 160 страниц в секунду
  • 14 млн. страниц в сутки

Далее можно наращивать мощность по необходимости и перейти на выделенный сервер. Если не будет хватать одного выделенного сервера, то имеется возможность по разделению функций (база данных, кэширование, веб-сервер) на несколько серверов.

Скорость и количество страниц это конечно хорошо, но сколько это пользователей и заказов? Давайте считать. Рассмотрим базовое поведение пользователей. Клиент открыл список заказов, перешел в меню, первый уровень типов заданий, второй уровень, сохранил заявку, посмотрел 7-х откликнувшихся исполнителей, утвердил исполнителя, добавим еще 50% страниц и получим 10 страниц. Исполнитель открыл список заказов, конкретный заказ, откликнулся на заказ, посмотрел что его утвердили, добавим еще 50% страниц и получим 6 страниц.

Предположим 5-и минутный интервал на работу с одной заявкой, которой заинтересуется 70 исполнителей.

Базовый сервер способен обработать 24 000 страниц за 5 минут. Посчитаем нагрузку на одну заявку: 1 клиент x 10 страниц + 70 исполнителей x 6 страниц = 430 страниц, округлим до 500.

Итого возможная нагрузка 24 000 / 500 = 48 заявок каждые 5 минут или 13 824 заявок в сутки.

(1 заказчик + 70 исполнителей) x 48 заявок = 3408 активных пользователей в 5-и минутный интервал.

Важно что добавив 100 рублей в месяц на хостинге мы получаем двухкратный рост производительности.

На мой взгляд получилось очень неплохо. В запасе еще остается задача кэширования в приложении, чтобы в 10-и раз увеличить допустимые нагрузки, но мы решили отложить, чтобы упростить сопровождение и дальнейшего развитие проекта.

0
В избр. Сохранено
Авторизуйтесь
Вход с паролем