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

Вернуться   Форум Flasher.ru > Flash > Серверные технологии и Flash

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

блогер
Регистрация: Sep 2007
Адрес: Гамбург
Сообщений: 1,648
Записей в блоге: 12
По умолчанию локальный сокет-сервер на флэше - как сэмулировать пакеты?

Привет. Пробую написать сокет сервер на эйре и в этом дел я нуб - нужна помощь. Я немного почитал про протоколы, сокеты и насколько я понимаю, когда я на одном конце делаю socket.flush(), то на другом конце не факт что я получу то же количество байт в пришедшем пакете. Но оставшееся по-любому придет рано или поздно, верно? И вот я хочу сэмулировать такую работу - но какую бы длину не запихнул - у меня приходит ровно столько же, сколько уходит. Пробовал до 50 Мб за раз - неужели еще больше надо?

Старый 24.01.2012, 13:11
Genzo вне форума Посмотреть профиль Отправить личное сообщение для Genzo Посетить домашнюю страницу Genzo Найти все сообщения от Genzo
  № 2  
Ответить с цитированием
Genzo
 
Аватар для Genzo

блогер
Регистрация: Feb 2010
Адрес: MSK
Сообщений: 859
Записей в блоге: 3
Отправить сообщение для Genzo с помощью ICQ Отправить сообщение для Genzo с помощью Skype™
Приведу простую аналогию :
Аналоговая кассета, вы слушаете с нее песни но не знаете когда одна заканчивается и начинается другая песня, вы записываете после каждой песни слово "следующая" и понимаете что когда вы услышали следующая, значит все что вы до этого слушали было песней. Так же и с пакетами, сервер без конца может слать данные, и нужно их как-то разделять, обычно это делается : "\0". В текстовом формате это выглядело бы так : "data1\0data2\data2continue\0data3"

Добавлено через 1 минуту
Еще принято в заголовке пакета указывать его длину, чтобы можно было точно понять что пришел целый пакет, совместите проверку длинны и разделение пакетов и будет счастье.
__________________
Gamedev != Gaming (http://twitter.com/#!/GenzoDev). Don't forget to [+] if it works.

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

блогер
Регистрация: Sep 2007
Адрес: Гамбург
Сообщений: 1,648
Записей в блоге: 12
Ммм, наверное непонятно объяснил. С разделением проблем нет. Наоборот - я всегда получаю ровно столько сколько отправил. Интересует как на локальном сервере добиться того, чтобы сокет дробил входящие пакеты. Можно конечно вручную разбивать байт аррэй и отсылать в два захода - но хочется протестировать механизм приема/отдачи сообщений так, как это будет в боевом проекте.

Старый 24.01.2012, 13:53
Genzo вне форума Посмотреть профиль Отправить личное сообщение для Genzo Посетить домашнюю страницу Genzo Найти все сообщения от Genzo
  № 4  
Ответить с цитированием
Genzo
 
Аватар для Genzo

блогер
Регистрация: Feb 2010
Адрес: MSK
Сообщений: 859
Записей в блоге: 3
Отправить сообщение для Genzo с помощью ICQ Отправить сообщение для Genzo с помощью Skype™
напишите на сервере задержку, что-то типа
Код AS3:
buf.writeByte(1);
setTimeout(1000,continueWriting);
private function continueWriting(){
buf.writeByte(2);
buf.flush();
}
__________________
Gamedev != Gaming (http://twitter.com/#!/GenzoDev). Don't forget to [+] if it works.

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

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

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


 


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


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