Flash Ripper RSS Readers

Эффективность Flash Remoting: быстрый эксперимент

Мне выпал шанс грубо сравнить производительность Flash Remoting во Flash Player 9 с передачей XML-данных. Рабочие условия: есть гео-данные в формате GML (XML), описывающие границы районов города в виде полигонов. Общее количество точек-вершин полигонов — около 4000. Размер загружаемого XML равен 244 Кб, а со стандартным GZIP-сжатием — 49 Кб. Требуется сократить размер загружаемых данных и время их загрузки.

С использованием Flash Remoting размер загружаемых данных составил 44 Кб, а с GZIP-сжатием — 19 Кб. Это в 2,5 раза меньше размера XML, приблизительно настолько же быстрее оказалась и загрузка Remoting-данных. Кроме того, за счет обмена в Remoting типизированными геометрическими объектами удалось избавиться от некоторых шагов по разбору гео-данных из XML, так что выросла и скорость отрисовки загруженных полигонов.

Но у Flash Remoting, похоже, есть свой минус. Загруженные данные не кэшируются между сессиями, поскольку работа Remoting идет через POST-запросы. Думаю о создании своего кэша во Flash Cookies, но он ведь тоже не резиновый, а объем данных весьма большой. Может, есть другие варианты?

Писал Rost, 6 Ноябрь 2007 15:43

Найдены баги:

Flash Cookies на самом деле резиновый. Резиновости можно добиться, если использовать не одно имя для SharedObject'a, а множество разных. ;)

E-Fir - 6 Ноябрь 2007 16:20

Красота. Не знал! Спасибо, бу пробовать!

Рост - 6 Ноябрь 2007 16:41

К сожалению, GZIP компрессию бинарных данных (AMF3) нельзя использовать при работе с IE (лезут ошибки), с FireFox все OK.

Solo - 6 Ноябрь 2007 23:21

А если не секрет -- откуда поставляется GML ???

Ivan Sergeev - 7 Ноябрь 2007 0:09

К сожалению, GZIP компрессию бинарных данных (AMF3) нельзя использовать при работе с IE (лезут ошибки), с FireFox все OK.

Интересно, это и во Flash Player 9 так? Если можно - какие именно глюки? Раньше не слышал.

Рост - 7 Ноябрь 2007 12:58

А если не секрет -- откуда поставляется GML ???

Я работал непосредственно с т.н. MapServer, который делает выборку гео-данных из базы и отдает мне как XML. Довольно интересная технология, хочу об этом написать пару постов.

Рост - 7 Ноябрь 2007 13:00

Да, если можно про MapServer поподробней. Очень интересно.

Ivan Sergeev - 7 Ноябрь 2007 18:17

Да, если можно про MapServer поподробней. Очень интересно.

Ок, По этой тему будет серия постов. И про мапсервер, и про работу с гео-данными вообще. Большая часть моих последних сообщений вдохновлена работой с огромным массивом данных, которыми МапСервер стремится завесить мое флэш-приложение :)

Рост - 7 Ноябрь 2007 19:47

>>К сожалению, GZIP компрессию бинарных данных (AMF3) нельзя использовать при работе с IE >>(лезут ошибки), с FireFox все OK.

>Интересно, это и во Flash Player 9 так? Если можно - какие именно глюки? Раньше не слышал.

Чтобы воспроизвести данную ошибку надо проделать следующее:

1. http://www.jamesward.org/census/
2. перейти на Navigator (слева вверху)
3. Выбрать Flex AMF3
4. Выжать кнопень Execute.

под IE вылезает вот такое сообщение от Flash Player:

[RPC Fault faultString="Send failed" faultCode="Client.Error.MessageSend" faultDetail="Channel.Connect.Failed error NetConnection.Call.Failed: HTTP: Status 200: url: 'http://www.jamesward.org/census/messagebroker/amf?id=flex_amf3&gzip=true'"]
at mx.rpc::AbstractInvoker/http://www.adobe.com/2006/flex/mx/internal::faultHandler()
at mx.rpc::Responder/fault()
at mx.rpc::AsyncRequest/fault()
at mx.messaging::ChannelSet/::faultPendingSends()
at mx.messaging::ChannelSet/channelFaultHandler()
at flash.events::EventDispatcher/flash.events:EventDispatcher::dispatchEventFunction()
at flash.events::EventDispatcher/dispatchEvent()
at mx.messaging::Channel/mx.messaging:Channel::connectFailed()
at mx.messaging.channels::PollingChannel/mx.messaging.channels:PollingChannel::connectFailed()
at mx.messaging.channels::AMFChannel/mx.messaging.channels:AMFChannel::statusHandler()

Solo - 8 Ноябрь 2007 12:01

Да, забыл уточнить, что ошибка вылезает в IE6 без сервис паков.

Solo - 8 Ноябрь 2007 12:33



Это запись из категории 'Remoting'. 10 еще cвежих:

Архивы по категориям:

3D-18, Adobe AIR-30, Animation-1, Apache Ant-1, Architecture-1, ARP-1, Art-25, Articles-26, AS3-52, Books-7, Business-3, Cairngorm-2, CI-1, Classes-10, Coding-30, Community-113, Components-19, Contests-28, Cool-Job-5, Debug-18, Design-26, Development-84, EMO-1, Events-13, Extensions-2, FAQ-8, FDS-1, Flash and html-5, Flash Player-35, Flash Updates-8, Flash-scene-1, flash10-4, FlashLite-2, Flex-30, Flex 2-80, Flickr-1, FMS-1, FPUG-46, frameworks-1, Games-11, Good Job!-35, HaXe-14, Health-2, Humor-10, Ideas-13, JavaScript-1, Job-26, JSFL-8, Links-2, Linux-1, Maps-1, Math-8, Money-11, MXML-1, Open Source-15, Optimization-2, Patterns-2, Personalities-27, Politics-1, Preloading-3, Productivity-9, PureMVC-10, Pv3d-1, Rafpug-4, Red5-3, Remoting-11, Resources-21, Ruby-6, SAAS-1, Security-11, SEO-8, Silverlight-5, Sound-3, Strategy-120, Tamarin-1, Tools-113, Training-2, Trash-8, URAFPUG-13, Urgent-1, Usability-6, Video-6, VoIP-5, Wallop-1, Wishlist-2, Архив всех записей (большой)

За последние месяцы:

Июл 2008: Международная встреча разработчиков URAFPUG завершена, URAFPUG - трансляция студии Flex-фреймворка Mate, весь Июл

Июн 2008: Попытка предварительных выводов о встрече аниматоров, Онлайн трансляция встречи аниматоров в Донецке, весь Июн

Май 2008: Если 3D, то по-взрослому: официальный запрос в Adobe по поводу контроля над мип-маппингом. Нужна ваша поддержка!, В этом году «Russian Flash Awards» пройдет в «космическом стиле», весь Май

Апр 2008: Программирование под флэш платформу. Cтатья (местами спорная), Advanced Flash Components бесплатно раздает все свои AS2-компоненты, весь Апр

Мар 2008: Зарплаты программистов в 2007 году, FlashPhone как технология года? Технология года? В Рунете?, весь Мар

Фев 2008: ЙА ФПУГ — регистрация на первую встречу UAFPUG продолжается, Закулисы Flex и секрет успеха опенсорс-проекта, весь Фев





Примечания:
Статус документа
: в процессе
   2002-2007 Производство: Рост Прибыли · О проекте · Подписка на новости (RSS)