Правильно ли выделять целый порт под определенную задачу на сервере? Надеюсь я корректно расписал свой вопрос
Вечерочка, Хабр! При написании сервера задался таким вопросом: если мне необходимо реализовать авторизацию пользователя, отправку данных при запросе(в моем случае новостных блоков), а так же прием и отправку сообщений по чатам, то под каждую задачу мне необходимо выделить отдельный порт, чтобы принимать, обрабатывать и отвечать на определенные запросы? Если же нет и обойтись можно лишь одним портом, тогда вопрос следующий: как мне фильтровать полученные данные и по каким критериям, чтобы, например, при авторизации люди получали подтверждение входа, а не новостной блок. Заранее спасибо!
P.S работаю я преимущественно с TCP, а приложения клиентов будут располагаться на desktop (если это как-то уточнит мой вопрос)

26 Янв 2021 в 19:45
174 +1
0
Ответы
1

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

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

Таким образом, при авторизации сервер сможет вернуть подтверждение входа, а при запросе новостей - отправить соответствующий блок новостей. Кроме того, такой механизм позволит вам легко добавлять новые типы запросов в будущем, не меняя архитектуру сервера.

Так как вы работаете с TCP и ваши клиентские приложения будут находиться на desktop, вы можете рассмотреть возможность использования сетевых библиотек, таких как Socket.io, для более удобного обмена сообщениями между клиентом и сервером.

Надеюсь, это поможет вам в реализации вашего сервера. Удачи!

17 Апр 2024 в 21:09
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Гарантированные бесплатные доработки в течение 1 года
Быстрое выполнение от 2 часов
Проверка работы на плагиат
Поможем написать учебную работу
Прямой эфир