Написать FTP-сервер с boost::asio::co_spawn и FTP-клиент с libev
Цена договорная
Реализовать асинхронный параллельный FTP-сервер. Порт приёма входящих соединений и число потоков задавать параметрами программы. Осуществлять штатный выход по сигналам прерывания/завершения процесса. Достаточно реализовать только анонимный доступ (без аутентификации), пассивный режим (PASV, соединение для передачи данных устанавливает клиент), только команды, необходимые для перемещения по дереву каталогов, получению списка файлов и скачке файлов в поточном двоичном режиме. Основная часть протокола описана в https://tools.ietf.org/html/rfc959.
Клиентская и серверная части должны поддерживать задание числа используемых в пуле потоков ввода-вывода. Клиентская часть, используя выделенные ей потоки, генерирует запросы серверной части. Точный разбор ответов не требуется, только приём. Предусмотреть посылку минимального по объёму запроса с минимальным ответом и большого запроса с большим ответом (единицы мегабайт). Клиентская часть измеряет число обработанных запросов в единицу времени.
Обязательно использование с++20 и Cmake.
Желательно выполнение до конца сентября.
Клиентская и серверная части должны поддерживать задание числа используемых в пуле потоков ввода-вывода. Клиентская часть, используя выделенные ей потоки, генерирует запросы серверной части. Точный разбор ответов не требуется, только приём. Предусмотреть посылку минимального по объёму запроса с минимальным ответом и большого запроса с большим ответом (единицы мегабайт). Клиентская часть измеряет число обработанных запросов в единицу времени.
Обязательно использование с++20 и Cmake.
Желательно выполнение до конца сентября.
Отзывы
Поначалу исполнитель показался вполне адекватным и разбирающимся в теме. Однако, мало того, что он просрочил проект, он начал им интересоваться только после дедлайна. Кроме того, по мере того, как он интересовался проектом, он повышал цену проекта, которая платилась непосредственно ему на карту. Он не ознакомился даже с текстом задания, когда взялся за проект. Под конец он обвинил меня в том, что из-за моего проекта не выполнил другой проект, и что ему пришлось через месяц сидеть с энергетиком и кофе, дописывая мою работу. После чего открыл арбитраж. Создавалось ощущение, что на самом деле я общаюсь с несколькими людьми, а не с одним человеком. Либо фрилансер совершенно неадекватный и некомпетентный человек.
~ 3 года
назад
В заказе есть исполнитель
При переводе заказа из архивного в актуальный, текущий исполнитель будет снят с задачи.
Выберите тип сделки
С безопасной сделкой вы всегда сможете вернуть средства, если что-то пойдет не так. С простой сделкой вы самостоятельно договариваетесь с исполнителем об оплате и берете на себя решение конфликтов.