![]() |
чем AMF лучше XML
Сразу скажете — Не путай чегевару с балалайкой — Но!
..проект - онлайн игра — тормоза во время приема xml .. Я (флэш клиент прогер) предложил использовать amf и flap (perl шлюз).. Да — вроде как абстракции прикольные, но не заметили разницы в использовании netServise или XML.load В чем выражается сжатие amf и вообще приимущесчтва ? (кроме прикольности абстракции) |
оно как весит намного меньше и накладные расходы на декодирование меньше вроде бы
|
Цитата:
загружал 1000 раз используя XML.load и соответственно через вызов скрипта flap (как в экзамплах base) разница в пределах погрешности.. каюсь - сервак стоял в соседней комнате - на рабочий флап пока не тестил.. но стоит ли ждать увеличения производительности, если основные косяки нашего апача это формирование хтттп заголовков, а не передача 20-100 байтов по хмл? в чем плюc амф? |
20-100 байтов за раз? тут имхо просто на бинарных сокетах общаться оптимально
|
Давайте не говорить о частностях - меня очень интересуют реальные факты о преимуществах Amf/
1) что такое сериализация-десериализация и зачем она нужна. 2) сжатие данных - по какому методу сжимается и какой процент сжатия текста ( очень важно знать при передаче XML данных) 3) скорость работы. улучшенные тесты в локальной сети показали проигрыш использования amf перед обычным Xml.load по времени около 30% 98660 mc - Xml.load против 128674 у amf , кроме того наблюдая картинку загрузки ЦП при загрузке(последовательно) 1000 раз одной и той-же xml ( размер 43kb) в первом случае (Xml.load) - стабильная линия +20% , во втором случае была крдиограмма с резкими скачками и падениями от +35 до 0 - я не смотрел пока исходники mx.remoting но сдается мне что всё это все равно базируется на базовых классах ( в частности XML) , и скорсть по опаределению не может быть лучше. - так всё таки - объясните мне зачем AMF. PS предлагаю в этот топик вносить ссылки на русскоязычную внятную инфу о amf |
вопрос: что лучше BlazeDS или GraniteDS?
|
Лучше сишный сервер и собственный бинарный протокол. Минимум трафика, максимум скорости.
|
лично я недавно юзал GraniteDS...писал почтовый клиент на флексе с возможностью записи и отправки видео / аудио сообщений.
GraniteDS понравился, работает довольно шустро, реализована сериализация , так что флэшка получает уже типизированные объекты (а также отправляет их)...и вообще запрос-ответ проходит на порядок быстрее чем http |
|
Цитата:
Цитата:
Цитата:
Цитата:
Цитата:
ЗЫ: Увас что-то не работает? Читайте доку! Когда будут конкретные вопросы, отвечу. :umnik2: |
Очень конструктивно ...
|
amf и xml.. как раз делаю сейчас флексовый проджект и очень рад что использую BlazeDS и вот почему:
(буду говорить про java на стороне сервера) amf бинарный и это значит что можно вызвать удаленный метод который возвращает byte[] и он быстренько сериализуется в ByteArray на AS3(String, int и тд тоже можно ессесно), так же с коллекциями, например метод возвращает List<Map>, а в Map может быть што угодно в роли значения ключа, потом на AS3 пробегаемся по полученнорму result как по ArrayCollection и строим свой обьект, или же еще можно сериализовывать собственные типы, очень удобно кстати, создаем свой класс на Java MyJavaClass, и на AS3 пишем [RemoteClass(alias="MyJavaClass")] public class MyAS3.. поля делаем совместимые и все ) можно также вызвать удаленный метод который возвращает List<MyJavaClass> который потом на AS3 увидим как ArrayCollection с обьектами MyAS3. одним словом при xml нужно его генерить, потом разбирать и если нужны бинарные данные то делать запрос на сервак, в моем случае к сервлету, который будет отдавать по запрошенному урлу, который был в xml бинарный ответ. хотя что-то слышал про бинарный xml, но не видел и не использовал ) может все очень абстрактно написал, но суть надеюсь ясна таблица хар-к http://artemgolubev.com/blazeds-vs-g...flex-and-java/ |
Цитата:
Недавняя проблема была с использованием blazeDS в чистом AS (не флекс) проекте. Проблему решил. |
| Часовой пояс GMT +4, время: 23:25. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.