Функции сокетов PHP — соображения при переходе с Linux на Windows?

У меня есть сервер веб-сокета PHP, написанный с использованием модуля сокета (socket_bind(), socket_accept(), socket_recv(), так далее.).

Он был написан и протестирован и хорошо работает на Linux. Однако реализация должна быть кроссплатформенной.

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

В какой степени эти функции PHP абстрагируют основную архитектуру (сокеты Unix против Winsock)? Например,

  • Есть ли различия в эффекте / доступности различных флагов или опций?
  • Различаются ли коды ошибок, и если да, то есть ли способ их сопоставления?
  • Существуют ли архитектурные различия, которые означают, что похожие функции могут вести себя по-разному (например, разные правила блокировки)?

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

Обратите внимание, что для целей этого вопроса меня действительно интересуют только сокеты TCP / IP (хотя более общие ответы тоже подойдут).

0

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …