Ответов: 3 Просмотров: 1203
|
Доброго времени.
Уважаемые форумчане, проблема с потерей или неполучением, даже не могу четко сформулировать с чем))
Описание:
есть GPS трекер, отправляет простые строки с координатами на сервер. Сервер с помощью такого PHP скрипта слушает порт и пишет полученное в базу.
PHP:
скопировать код в буфер обмена
$port = 10003; //проверка сокета else echo 'Socket_create_listen on '.$port."\r\n"; //установка повторного использования сокета } if ($rval === false) { } else if ($rval !== 0) { echo 'Option SO_REUSEADDR is set'; } //цикл записи, (убрал часть подключения к базе, там все работает корректно) do { $l= mysql_query ("INSERT INTO tracks (text) VALUES ('$result')"); } while(true);
Трекер отправляет строки типа (0**********BR00160422A5131.0715N03115.1547E000.21658060.000000000000L00000000)
и настроен отправлять их каждые 20 секунд.
НО ПРОБЛЕМА, сервер получает данные с интервалом 5 минут в среднем.
Но если отправлять данные через адрессную строку:
http://127[dot]0[dot]0[dot]1:10003/?send=HI
сервер благополучно принимает соединение и записывает в базу, даже если они приходят по пару раз в секунду.
САМОЕ удиВиТЕЛЬНОЕ ПРИ ЭТОМ, проскакивают месседжи от трекера, с нужной периодичностью.
Строки приходят разные. следовательно трекер генерит трафик, но сервер не принимает часть данных.
Подскажите плиз что делаю не так??
Код может сумбурный, сорри новичек. липил из разных источников(( |