Сервер при изменении оставляет на веб сервере свой Url и key. Клиент забирает эту информацию с web. Каким способом лучше устроить общение между двумя объектами? httrequest или email. Требуется быстродействие но оба метода как то не ахти, особенно если примы на разных симах. У кого какие идеи есть?
Сервер - клиент
Started by Viktor, 06.02.12 - 11:46
5 replies to this topic
#1
Posted 06.02.12 - 11:46
Вообщем вопрос следующего характера. Ставим в сл два объекта, один сервер, второй клиент.
Сервер при изменении оставляет на веб сервере свой Url и key. Клиент забирает эту информацию с web. Каким способом лучше устроить общение между двумя объектами? httrequest или email. Требуется быстродействие но оба метода как то не ахти, особенно если примы на разных симах. У кого какие идеи есть?
Сервер при изменении оставляет на веб сервере свой Url и key. Клиент забирает эту информацию с web. Каким способом лучше устроить общение между двумя объектами? httrequest или email. Требуется быстродействие но оба метода как то не ахти, особенно если примы на разных симах. У кого какие идеи есть?
#2
Posted 06.02.12 - 19:58
Я бы сказал, что лучше httrequest, проще отследить результат запроса и гарантировать отправку.
А быстродействия не будет, да…
А быстродействия не будет, да…
#3
Posted 07.02.12 - 08:44
А как работают вендоры по продажам, которые подгрузают несколько текстур, и при покупке отправляют товар? Работают они шустро, а товар находится на сервере.
#4
Posted 07.02.12 - 13:28
Раньше работало через корявый XML-RPC, но это IMHO не выход.
Шустрее всего (по минимуму) будет вот так:
Есть сервер (Коробка с товарами и текстурами), клиент(ы) (Вендоры, напртимер) и веб-сервер (сайт с базой данных).
Шустрее всего (по минимуму) будет вот так:
Есть сервер (Коробка с товарами и текстурами), клиент(ы) (Вендоры, напртимер) и веб-сервер (сайт с базой данных).
- (При каждом рестарте сима) Сервер делает у себя RequestURL и, если получает урл - отправляет его на сервер с пометкой, что это урл. Если не получает (мало ли, может, какойнить мудак забил все УРЛ-ы на парселе) - отправляет на сервер свой ключ с пометкой, что урла нет. Если нам нужно, чтоб у одного юзера могло быть несколько серверов - у каждого из них есть свой ID, который задает юзер (продавец), и этот ID передается вместе с УРлом или ключом.
- Внутри клиентов прописан этот ID, они его передают на веб-сервер и веб-сервер в ответ возвращает урл - если он есть или сообщение о том, что урла нет. Если передан урл - будем общаться с сервером через веб. Если УРла нет - клиент пишет "вендор оффлайн, звыняйте" и спустя минуту повторяем этот пункт. При первом запуске - отправляем ряд запросов и получаем с сервера ключи текстур/инфу о товарах.
- При покупке клиент (а)передает серверу сообщение о покупке и (б)передает веб-серверу сообщение о покупке, которое там сохраняется.
- Получив информацию о доставке товара сервер шлет покупателю товар и отправляет серверу сообщение о доставке, которое удаляет ранее сохраненное сообщение о покупке.
- Раз в 5 минут сервер стучится на веб-сервер на предмет недоставленных покупок. Если такие есть - вебсерв возвращает первое из них и их количество. Для этого первого выполняем пункт 4. Если количество больше 1 - ждём 10 секунд и выполняем пункт 5 ещё раз.
PS. Соб, что у тебя с твердым знаком на форуме? Почему-то жирный набор включается... А я твердый знак хочу!
LSL-скриптинг и UI-дизайн. Дорого.
#5
Posted 07.02.12 - 20:05
Viktor, on 07.02.12 - 08:44, said:
А как работают вендоры по продажам, которые подгрузают несколько текстур, и при покупке отправляют товар? Работают они шустро, а товар находится на сервере.
В этой фразе не верна посылка «работают шустро». Иногда товар приходит с задержкой в минуты, иногда в часы. Иногда совсем не приходит.
#6
Posted 08.02.12 - 15:45
Ну ничо, теперь есть эвент transaction_result, когда по всему гриду его допилят - "совсем не приходит" больше не будет
LSL-скриптинг и UI-дизайн. Дорого.
1 user(s) are reading this topic
0 members, 1 guests, 0 anonymous users









