Эффективный способ общения между Flash и MySql? - PullRequest
2 голосов
/ 05 октября 2009

Каков наилучший / быстрый / эффективный способ связи между Flash и MySql? У меня есть многопользовательская онлайн-игра с использованием Flash-php-MySql, кажется, что когда я достигаю 5 или более игроков, игра затягивается. И я считаю, что проблема заключается в запросе и ответе от MySql через php. Я использую URLRequest, метод Post в файле AS3.

Я попробовал Google, я нашел этот Amfphp и Zend Framework Adobe AMF. Я не уверен, помогает ли это моему подключению к базе данных? Кто-нибудь пробовал это раньше? (Пожалуйста, включите ваш комментарий о любом из них в ответе)

Не могли бы вы, ребята, порекомендовать, какие методы связи между Flash - MySql более подходящие с точки зрения времени отклика и безопасности?

Ответы [ 2 ]

3 голосов
/ 05 октября 2009

ZendAMF и AMFPHP (оба от одного и того же парня, ZendAMF новее, но немного сложнее в настройке) оба великолепны. По сути, вам нужно потратить время на настройку как внешнего, так и внутреннего интерфейса, но после запуска вызов метода PHP так же прост, как MyRemoteConnection.myMethod (myVars) в файле AS3.

Если вы работаете во Flex, это становится еще проще, вы можете использовать класс RemoteConnection и легко динамически отображать локальные объекты значений AS3 на удаленные объекты значений PHP.

Независимо от того, используете ли вы ZendAMF или AMFPHP, это будет намного быстрее, чем любые другие XML-файлы, поскольку они используют двоичную передачу данных. Хорошим введением в AMFPHP является учебное пособие Ли Бримелоу - здесь часть первая , вот часть вторая . Надеюсь, это поможет!

РЕДАКТИРОВАТЬ: Кроме того, я должен отметить, что Adobe официально поддерживает ZendAMF для этого материала. Если вам удобно настраивать Zend PHP Framework на вашем сервере, тогда выбирайте его, но если вы хотите очень простую установку на стороне сервера, используйте AMFPHP, это также фантастика, и, как я сказал, она была создана тем же человеком.

1 голос
/ 05 октября 2009

Пытаетесь ли вы обрабатывать частые <> данные клиента с помощью односторонних почтовых звонков? В этом случае вам придется постоянно опрашивать сервер и постоянно открывать и закрывать соединение.

Если вы хотите использовать PHP, я бы рекомендовал создать сервер сокетов, чтобы у вас все время было только одно открытое соединение. Вы должны установить соединение, используя класс Socket в ActionScript. Затем ваш сокет-сервер PHP может получать данные из базы данных SQL с высокой скоростью, поскольку они оба расположены на одном компьютере, и напрямую отправлять эти данные обратно во флэш-клиент, используя соединение с открытым сокетом.

Это должно помочь вам начать работу , хотя я рекомендую использовать класс Socket, а не класс XMLSocket, поскольку он обеспечивает больше настроек.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...