Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 06.07.2011, 05:19
ninjatune вне форума Посмотреть профиль Отправить личное сообщение для ninjatune Найти все сообщения от ninjatune
  № 1  
Ответить с цитированием
ninjatune

Регистрация: May 2011
Сообщений: 10
По умолчанию Репликация объектов р2р, без участия Stratus

Здравствуйте.
Имеется групповой р2р чат, для которого имеется р2р облако (и объект NetGroup).
Нужно в этом чате сделать возможность для каждого участника показать другим картинку (аватар), и сменить ее в любой момент этого чата - т.е. например юзер ткнул "сменить аватар" - выбрал новую картинку - эта картинка отправилась flash-клиентам остальных участников чата и отобразилась у них.
Пробовали взять стандартное решение отсюда:
http://www.flashrealtime.com/file-sh...ion-flash-p2p/
но по результатам тестов получается нехилая задержка от этой репликации (иногда до 5 с) - при попытке send/receive объекта с клиента код этой репликации каждый раз обращается к Stratus, якобы для маршрутизации - хотя маршруты до участников чата известны заранее (и заранее инициализированы в NetGroup, контроль онлайн-участников также реализован отдельно, проверять каждый раз при репликации маршрутизацию до участников - не нужно). Это больше похоже на то, что репликация каждый раз просит разрешения у стратуса
Нужно - сделать репликацию картинки без участия стратуса, используя только заранее инициализрованный NetGroup , с минимальной задержкой загрузки картинки.
1. Подойдет ли для этого например такой способ - берем чат отсюда:
http://www.flashrealtime.com/simple-...etgroup-rtmfp/ , сообщения в нем передаются вроде бы без запроса к страусу каждый раз, вместо сообщений передаем картинку в упакованном виде (base64 etc) и затем у каждого клиента отображаем распакованную из мессаги полученную картинку. Или даже можно не упаковывать в base64?
2. Если кто-то сталкивался с похожей задачей (обмен объектами весом до 1 мб внутри р2р облака, без использования внешнего сервера) - подскажите плз, какие еще есть варианты решения.

Старый 06.07.2011, 07:27
KODERart вне форума Посмотреть профиль Отправить личное сообщение для KODERart Найти все сообщения от KODERart
  № 2  
Ответить с цитированием
KODERart

Регистрация: Feb 2009
Сообщений: 36
А чем вы смотрите что флешка каждый раз к стратусу обращается?

Попробуйте поиграться с параметрами: ipMulticastMemberUpdatesEnabled, objectReplicationEnabled, peerToPeerDisabled, routingEnabled, serverChannelEnabled - в классе GroupSpecifier.

Вот вроде пример чата:
http://www.flashrealtime.com/simple-...etgroup-rtmfp/

В NetStream можно отправлять файлы без всяких base64. Я из FileReference отправлял.

Старый 07.07.2011, 03:30
ninjatune вне форума Посмотреть профиль Отправить личное сообщение для ninjatune Найти все сообщения от ninjatune
  № 3  
Ответить с цитированием
ninjatune

Регистрация: May 2011
Сообщений: 10
Цитата:
Сообщение от KODERart Посмотреть сообщение
А чем вы смотрите что флешка каждый раз к стратусу обращается?
Сравнивая работу вышеуказанных готовых скриптов чата и репликации, получаем такие результаты:
чат - передача сообщения всем участвующим в нем происходит в рамках 1 сек, даже большого сообщения весом до 0.5 Мб
репликация - загрузка картинки весом 0.5 Мб может занимать до 5-7 сек, а в следующих попытках 1-3 сек, при этом уже есть инициализированный NetGroup, ничего переинициализровать по части р2р облака не нужно.
Больше всего такое поведение репликации похоже на то, что она каждый раз запрашивает у страуса инфу о пирах в группе. Можно еще посмотреть флешку сниффером при использовании этой репликации - пока руки не дошли.
Такое поведение очень странно для тулзы, которая по идее не должна вообще заботиться о сети, принимающих пирах итд (уже есть NetGroup) - а должна просто посылать копию объекта через NetGroup, вместо этого имеем задержки до 5-7 сек - кому нужна "репликация" с такой скоростью не совсем понятно

Создать новую тему Ответ Часовой пояс GMT +4, время: 03:26.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 03:26.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.