Skip to content

nemliyartym/client-server-tcp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Задача должна быть решена на языке C++ для ОС Linux. При разработке использовать только стандартную библиотеку C++, boost и POSIX API.

Исходные данные: файл формата CSV с тремя колонками: дата/время в формате «dd.mm.yyyy hh:mm:ss» и две колонки с дробными числами; в качестве десятичного разделителя точка. Все три колонки обязательные.

Решение состоит из серверной и клиентской частей, запускаемых на одной машине. Сервер работает постоянно, клиент запускается для обработки одного файла. Имя файла передается клиенту в командной строке. Клиент соединяется с сервером по протоколу TCP и передает считанные из файла данные. В случае успешного завершения получает от сервера количество записей исходного файла и сохраняет в файл протокола.

Допустим запуск одновременно нескольких экземпляров клиентов с разными файлами. Сервер может принимать несколько клиенских соединений одновременно. Для каждого соединения находит запись с максимальной датой и в протокол пишет соответствующую дату и частное двух числовых полей. Подсчитывает количество записей и возвращает его клиенту.

Сервер использует тот же файл протокола, что и клиенты. В случае возникновения ошибок протокол должен содержать достаточную для понимания причины информацию об ошибках как на стороне клиента, так и сервера.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published