ТЕМА: "Параллельная обработка нескольких клиентов"
Цель: ознакомиться c принципами разработки и функционирования серверных приложений, использующих сокеты и способных обрабатывать нескольких клиентов одновременно.
Порядок выполнения работы
- Измените серверное приложение из лабораторной работы "Основы использования сокетов" так, чтобы оно было способно обрабатывать нескольких коиентов одновременно.
Для параллельной (одновременной) обработки нескольких в приложении должны быть реализованы два механизма:
- на основе порождения дочерних процессов при помощи системного вызова
fork
; - на сонове неблокирующих сокетов.
- на основе порождения дочерних процессов при помощи системного вызова
- Выполните тестовый запуск серверной и клиентской части, а также осуществите операции их взаимодействия.
- По результатам работы подготовить отчет.
Литература
- У. Ричард Стивенс, Стивен А. Раго "UNIX. Профессиональное программирование." 3-е изд. — СПб.: Питер, 2018. — 944 с.
Глава 8. Управление процессами. Пункты 8.1-8.5
Глава 16. Межпроцессорные взаимодействия в сети: сокеты. -
У. Стивенс "UNIX: разработка сетевых приложений" СПб.: Питер, 2003. — 1088 с.
Глава 4. Элементарные сокеты TCP. пункты 4.7-4.8.
Глава 6. Мультиплексирование ввода-вывода: функции select и poll.
Глава 15. Неблокируемый ввод-вывод.