Вопрос

При использовании сокетного общения в PHP, нужно ли подтверждать, было ли сообщение успешно получено после отправки каждого сообщения? Или же транспортный уровень (TCP) позаботится об обнаружении и исправлении ошибок, обеспечивая успешную доставку любых отправленных сообщений?

Это было полезно?

Решение

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

Другие советы

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

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

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top