Home > progz.ru-TheBestLang-ClientServer

progz.ru-TheBestLang-ClientServer

Progz.ru-TheBestLang-ClientServer is a project mainly written in Scala, it's free.

LoadTest of java simple TCP servers.

Сервер для сохранения сообщений и два клиента: для отправки сообщения (длина от 0 до 10 мегабайт) и второй для получения всех сообщений хранящихся на сервере в хронологическом порядке. У сервера два режима работы: сохранение всех сообщений (на диск) и хранение только последних десяти сообщений. Режим работы можно менять во время выполнения. При получении сообщения сервер должен сообщить клиенту, удалось ли его сохранить. Сообщение должно содержать только английские буквы и цифры. Если сообщение не укладывается в размер или содержит некорректные символы, оно не сохраняется, клиент должен быть уведомлен, что сохранение не удалось. Требования: 1) память <= 1Гб 2) сервер не должен падать из-за нехватки ресурсов. Он может отказывать клиентам в получении/отдаче сообщений (при лоад-тестировании), но по снятию нагрузки должен продолжить работать в обычном режиме.

Можно использовать любые БД, ЯП (в т.ч. вперемешку), любые фреймворки.

Хотелось бы провести такие лоад-тесты: 1) сервер сохраняет все сообщения, клиет шлет только валидные. 2) сервер сохраняет все сообщения, клиет шлет только валидные и не валидные по размеру. 3) сервер сохраняет все сообщения, клиет шлет только валидные и не валидные по содержанию. 4) 1-3, но сервер сохраняет только первые 10 сообщений. 5) 1-4, но сервер не справляется с нагрузкой и не принимает некоторые валидные сообщения.