Articles of сокеты

php: Как сохранить сокет клиента (не закрыт), так что дополнительный скрипт может получить его для отправки ответа?

У меня есть клиент-серверное приложение, в котором сервер может потребовать отправить информацию обратно клиентам. Поскольку шаблон клиент-сервер не позволяет серверу «запрашивать» клиента, существует 2 решения: Клиент вытаскивает сервер каждые несколько раз (что является плохим решением) Клиент поддерживает открытый сокет с сервером, который позволяет серверу при необходимости отправлять новую информацию. В настоящее время клиент (веб-приложение с […]

Невозможно подключиться к неблокирующему сокету

Это меня раздражает. Я должен создать очень простой неблокирующий скрипт сокета в php 5.3, где клиент подключается к серверу, используя неблокирующие сокеты. Я пробовал phpsocketdaemon и пример из руководства php , но в обоих случаях, когда я пытаюсь подключиться к серверу, я получаю следующую ошибку: socket_connect() [function.socket-connect]: unable to connect [10035]: A non-blocking socket operation […]

пакеты переменной длины в php

Я получаю пакеты, отправленные на мой сервер через UDP. Я использую socket_read для чтения данных, и он идет хорошо. Однако я столкнулся с ошибкой. Параметр длины для socket_read в моем случае НЕ всегда один и тот же. Длина данных может варьироваться от 50 до 150 байтов. Единственное, что остается постоянным, это то, что набор данных […]

Что может вызвать прерывистый SQLSTATE Нет таких ошибок файла или каталога из php PDO mysql в Debian Lenny?

Соединения проходят через localhost, используя файл mysqld sock. Они работают 99%% времени, но в некоторых странных условиях я получаю ошибку: SQLSTATE[HY000] [2002] No such file or directory На следующем запросе будут работать те же страницы. Единственное, что я могу придумать, это какая-то странная ошибка файловой системы.

Отправка данных сокетов с использованием значения ведущей длины

Я хочу отправить сообщения JSON из PHP-скрипта в приложение C # через сетевое соединение с помощью PHP Sockets . Обычно для двоичных протоколов первые 4 байта каждого сообщения должны быть целым числом, которое представляет длину (сколько байтов) сообщения. В C # I префикс каждого сообщения целым числом, которое сообщает длину сообщения следующим образом: byte[] msgBytes […]

PHP socket_write работает в первый раз, но

Я связываю, чтобы написать несколько сообщений (каждое сообщение, созданное динамически) на устройство через один сокет, созданный с помощью PHP. Первое сообщение всегда проходит; но последующие сообщения не проходят. Чтобы помочь мне отладить, пожалуйста, дайте мне знать, если есть проблема с этим примером: $socket= socket_create(AF_INET, SOCK_STREAM, SOL_TCP); socket_connect($socket, $ip, $port); socket_write($socket, "message 1\r"); socket_write($socket, "message 2\r");

Веб-узлы и идентификация уникальных одноранговых узлов

Я новичок в websockets. Ive только что завершил мой первый многоцелевой сервер сокетов, который обслуживает 3 типа сообщений в одном и том же сокете. Предполагаемое использование этого сервера выглядит следующим образом: chat messages real time market data user specific alerts Первые две функции отлично работают, и я полностью счастлив, однако я испытываю полную потерю, когда […]

PHP – обнаружение отключения удаленного хоста

Согласно документации , socket_read() должен возвращать FALSE когда удаленный узел закрыл соединение, и пустую строку '' когда больше нет данных для чтения. Однако во время моего тестирования он никогда не возвращает FALSE , даже когда я закрываю соединение удаленного хоста. Вот соответствующий код: $data = ''; do { $read = socket_read($socket, 1024); if ($read === […]

Создание сервера сокетов PHP для игры

Я разрабатываю игру, хорошо имею идею для игры и изучаю языки, которые, как я думал, мне нужен для проекта. Это простой веб-сайт, основанный на 2-х игровом клоне Глобальной термоядерной войны. Игроки регистрируются через форму PHP и автоматически сопоставляются. Логика игры довольно проста. Игрок A выбирает одну из территорий игрока B для атаки, ход переходит на […]

Как сделать NAT с сокетами PHP

Я пытаюсь сделать одноранговое приложение в php для работы таким же образом, как работает skype. Он работает с внутренними адресами, но когда я пытаюсь отправить данные на мой внешний адрес, сообщение никогда не попадает туда. Очевидно, что мне не хватает перевода адреса, но я не понимаю, как это сделать с сокетами PHP. Является ли это […]