PDA

Просмотр полной версии : "Обмен данных" для чайника


Dalass13
21.02.2011, 19:58
Доброго времени суток

Понимаю, что все уже достали с такого рода вопросами, НО всё-таки, если кому не сложно, объясните. Существует цель, абсолютно реальная и, по всей видимости, простая (в отличие от игры sestem'а про "драчки" и т.п.):

сделать флэшку, при запуске которой пользователю дается управление тупо, например, ЗЕЛЕНЫМ кружком (квадратом, ромбом, не важно), а человеку запустившему эту флэшку на другом компьютере - СИНИМ кружком, и при движении любого игрока, ХОТЯ БЫ(!) происходило движение на обоих компьютерах и в обеих флэшках.

Очень прошу разъяснить, что нужно сделать. На чем поднимать сервер, как обмениваться данными и главное, как сделать так, чтобы происходило всё это в реальном времени (я думаю x и y будет передать не "тормозно").

Смысл всего этого - просто попробовать и наконец понять, хотя бы поверхностно, что к чему.

Будет очень хорошо, если кто-нибудь ответит, а если еще и с примером, то просто идеально.
Спасибо

dark256
21.02.2011, 21:03
На форуме был этот примерчик где-то. Не нашел. Поэтому пощщу по новой.
Ключевая фраза
var socket:XMLSocket = new XMLSocket()

Плюс серверная часть.

Dalass13
21.02.2011, 21:09
оуу, а можно про серверную часть поподробнее, если не сложно

dark256
21.02.2011, 21:15
Там внутри архива много чего есть почитать. Я сам лично по серверам вообще ни в зуб ногой.

Dalass13
21.02.2011, 21:18
из архива, честно, ничего не понял XD

temofony
22.02.2011, 08:17
чувак для двух кружков тебе сокеты захрена не понадобятся))с помощью php записывай координаты каждого кружка каждую секунду в текстовый файл или в базу мускула))потом принимай их,обрабатывай,расставляй кружочки по полученным координатам)

Добавлено через 39 секунд
если че в пм помогу с исходниками)

dark256
22.02.2011, 08:44
таки на сокете всев разы проще релизуется.
а уж рнр раз в секунду дергать.... это и вовсе бред...

Dalass13
22.02.2011, 10:31
Тогда объясните, как через сокет то?

Tails
22.02.2011, 10:32
Dalass13
Я тоже сейчас вопросом серверного программирования интересуюсь. Хочу написать простенький сокетный сервачок на php. Но пока ничего толковова не получаеться, собирать информацию и уроки из интернета по кусочкам очень не удобно. Так-что жду зарплату, чтоб купить соотвестующую литературу, и нормально этому научиться. Вам советую также поступить :)

В ообщем там очень много всего.

Merf
22.02.2011, 10:42
Извините что вмешиваюсь, а по литературе посоветуете что-нибудь.

Tails
22.02.2011, 11:01
Сам не прочь посмотреть на советы. Пока конкретную книжку не присмотрел.
А по моему в такой литературе должно быть:
1. раздел XML + PHP
2. Немного о самом XML
3. Большой и толстый раздел о сокетах
4. И самый толстый раздел собсно о самой реализаций сокетного сервера - прослушивающего, принимающего и т.п. во всех подробностях от А до Я
5. Чем новее книга - тем лучше.

dark256
22.02.2011, 11:45
Наш серверщик воздвиг сокетсервер на Питоне. Без Яв, рнр, сей и т.п.
По производительности и требованиям к железу получилось что-то очумелое.
Тэсты на офисном компе (2ядра, 2 гига мозгов) показали способности к безболезненной обработке 10 тысяч запросов в секунду. И более.

Игруха класса "Ферма". Грядки, посеять, пожать, продать, сходить к другу украсть и т.п.
Прошлый сокет он писал на СиШарп. Рядом не лежало :)

касательно п.3. Имхо не надо никаких толстых книжек :)
Флэш часть - там вообще просто и удобно.
3 ивента: onConnect, onData, onClose
3 метода: connect, send, close.
В основном все сервисы реакции на ответ собираются в onData. По префиксу ответа ( типа команда ) запускается тот или иной сервис, класс, процедура. Обалденно удобно.
Жалко что я столько лет убил на общение с сервером через нттп. Со всеми этими ожиданиями,запросами, таймаутами, очередями и прочее.

Кстати по сокету данные удобнее гонять в формате json.

Если вытрясу с него кусочек питон-кода для "чтобы заживить и оно отвечало", выложу.

etc
22.02.2011, 12:22
Кстати по сокету данные удобнее гонять в формате json.

Самураи используют бинарный протокол.

Tails
22.02.2011, 12:31
Хмм надо посмотреть что за питон такой, 10 тыщ в секунду это конечно просто ппц. :)

dark256
22.02.2011, 13:38
Самураи используют бинарный протокол.

Can u publish a some litle part of code for example sorry please, sir? :)

etc
22.02.2011, 13:41
Can u publish a some litle part of code for example sorry please, sir? :)

some не получится. Да хоть бы и AMF, всяко меньше по объему.

Hauts
22.02.2011, 15:02
В ас2 бинарный протокол не реализовать, насколько мне известно.

dark256
22.02.2011, 15:08
Да хоть бы и AMF, всяко меньше по объему

AMF или X-AMF?

Кстати, если не сложно, можно ссылочку на описание формата, чтобы на русском и кратко?
Для конченых начинающих чайников :)))

Dalass13
22.02.2011, 16:26
что вообще тут происходит? %(

kpch
22.02.2011, 22:06
Сто пудов сыпните плз инфу о летературе на эту тему

Котяра
22.02.2011, 23:57
практически ТЗ топиксатртера:
http://www.smartfoxserver.com/docs/docPages/tutorials_pro/06_realtimeMaze/index.htm
тут as2 ещё, но смысл я думаю понятен будет.

Dalass13
23.02.2011, 23:36
всё равно много чего непонятно и не получается

etc
24.02.2011, 11:00
AMF или X-AMF?

Кстати, если не сложно, можно ссылочку на описание формата, чтобы на русском и кратко?
Для конченых начинающих чайников :)))

x-amf? Это что-то новенькое.
Нет, обычный AMF, он нативно поддерживается во Flash.

SAN4EZ
27.02.2011, 21:31
Помогите пожалуйста. Как определить координаты клипа в клипе ,но относительно рабочего поля (_root).

sltrdn
27.02.2011, 21:54
Попрбуем тогда тут спросить. У меня задача похожая.
На php серверная часть есть. Скрипт запускается только когда флэшка обращается к серверу.
Сервер получает сообщение от флэша и отправляет сообщение обратно.

Проблема в том что флэш молчит. Т.е. события onXML или onData не отрабатывают, хотя сервер получив сообщение от флэша отправляет ему данные обратно. Все тестится на локальной машине.

Не могу понять, толи флэш не получает ответа, толи просто не понимает. Куда копать?

Блин, там оказывается \0 в конце сообщения от сервера должен быть.
Извиняюсь за беспокойство.