Суть:
Клиент передает данные на серверное ПО
Формат пакета
public class dataCS
{
public char cmd;
public int id;
public dataCS(char c, int i)
{
cmd = c; //Команда
id = i; //ИД клиента
}
}
Экземпляр класса сериализуется, массив байтов передается.
При работе на локальной машине (К и С работают на одном хосте, подключение через 127.0.0.1) все работает идеально, задержки почти нет.
При работе через сеть (и через хаб и через кроссовер), клиент и сервер на разных хостах, задержки составляют порядка секунды.
ИТАК,
Каким образом можно избежать задержек при работе через сеть?
P.S.: Данная задача, реализованная посредством PHP и JavaScript (через браузер, соответственно) выполняется на ура, но, по некоторым причинам реализация через PHP не может быть использована.
Примечание:
Окей... Надеюсь, код читаем. Тапками не кидайте, я дилетант.
http://pastebin.com/4CQawNRP
Не дали запостить код сюда, поэтому пастабин.
Примечание:
Это я вообще не делал, но код установки соединения приведу:
http://pastebin.com/3e5E1MMw
Делал на основе чата какого-то.
Примечание:
Спасибо, я попробую Ваш совет, надеюсь, поможет. Но не в ближайшие 10 часов, к сожалению.
к слову, анализ потоков показал, что 73% процессорного времени сервера тратится на синхронизацию.
afk.
Примечание:
Мне не приходил в голову такой способ, ля меня это на данный момент за рамками понимания. :D
Примечание:
Спасибо! Ваш совет очень помог! Все идеально.
RPI.su - самая большая русскоязычная база вопросов и ответов. Наш проект был реализован как продолжение популярного сервиса otvety.google.ru, который был закрыт и удален 30 апреля 2015 года. Мы решили воскресить полезный сервис Ответы Гугл, чтобы любой человек смог публично узнать ответ на свой вопрос у интернет сообщества.
Все вопросы, добавленные на сайт ответов Google, мы скопировали и сохранили здесь. Имена старых пользователей также отображены в том виде, в котором они существовали ранее. Только нужно заново пройти регистрацию, чтобы иметь возможность задавать вопросы, или отвечать другим.
Чтобы связаться с нами по любому вопросу О САЙТЕ (реклама, сотрудничество, отзыв о сервисе), пишите на почту [email protected]. Только все общие вопросы размещайте на сайте, на них ответ по почте не предоставляется.