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

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

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

Регистрация: Jul 2015
Сообщений: 73
По умолчанию XMLSocket vs Socket

последнее время изучаю сокеты и такой вопрос, в чем различия XMLSocket И Socket?

Старый 15.11.2015, 14:30
caseyryan вне форума Посмотреть профиль Отправить личное сообщение для caseyryan Найти все сообщения от caseyryan
  № 2  
Ответить с цитированием
caseyryan
 
Аватар для caseyryan

Регистрация: Jun 2012
Адрес: Новосибирск
Сообщений: 6,644
Записей в блоге: 4
Цитата:
Сообщение от tattori Посмотреть сообщение
последнее время изучаю сокеты
Каким образом?
Цитата:
в чем различия XMLSocket И Socket?
Различия понятны сразу, стоит только почитать о первом и втором в документации. Да и из названия понятно
XMLSocket посылает сообщения в виде XML, а Socket - бинарные данные

Старый 15.11.2015, 14:59
tattori вне форума Посмотреть профиль Отправить личное сообщение для tattori Найти все сообщения от tattori
  № 3  
Ответить с цитированием
tattori

Регистрация: Jul 2015
Сообщений: 73
Цитата:
Каким образом?
сначала изучал простой сокет в связке с php , но php как то не понравился и начал изучать что то другое для сервака, наткнулся на node.js и он по-моему крут)))) и задался вопросом по клиентской части, какой сокет лучше, разница лишь в типе передаваемых данных? документацию прочел, хочется узнать мнение людей которые работают с сокетом

Старый 16.11.2015, 08:20
bifidokk вне форума Посмотреть профиль Отправить личное сообщение для bifidokk Найти все сообщения от bifidokk
  № 4  
Ответить с цитированием
bifidokk
 
Аватар для bifidokk

Регистрация: Jan 2011
Сообщений: 200
http://www.flasher.ru/forum/showthread.php?t=141282

Старый 16.11.2015, 13:43
tattori вне форума Посмотреть профиль Отправить личное сообщение для tattori Найти все сообщения от tattori
  № 5  
Ответить с цитированием
tattori

Регистрация: Jul 2015
Сообщений: 73
я так понял различия действительно только в типе данных)))

Старый 16.11.2015, 15:10
Tails вне форума Посмотреть профиль Отправить личное сообщение для Tails Найти все сообщения от Tails
  № 6  
Ответить с цитированием
Tails
 
Аватар для Tails

блогер
Регистрация: Dec 2008
Адрес: г. Чебоксары
Сообщений: 2,259
Записей в блоге: 6
В xml сокете для разделения сообщений используется нулевой байт. Если вы точно уверены, что ваши сообщения не будут содержать такой байт, то можно использовать и xml сокет. (В противном случае, будете получать обрывки xml сообщений, разрезанные в тех местах, где стоит нулевой байт)

По сути, xml сокет - это просто надстройка над обычным, бинарным сокетом. В нём уже реализован протокол для обмена данными - простое деление по нулевому байту.
__________________
Дети не должны знать о своих родителях

Старый 17.11.2015, 08:45
bifidokk вне форума Посмотреть профиль Отправить личное сообщение для bifidokk Найти все сообщения от bifidokk
  № 7  
Ответить с цитированием
bifidokk
 
Аватар для bifidokk

Регистрация: Jan 2011
Сообщений: 200
Цитата:
Сообщение от Tails Посмотреть сообщение
В xml сокете для разделения сообщений используется нулевой байт. Если вы точно уверены, что ваши сообщения не будут содержать такой байт, то можно использовать и xml сокет. (В противном случае, будете получать обрывки xml сообщений, разрезанные в тех местах, где стоит нулевой байт)

По сути, xml сокет - это просто надстройка над обычным, бинарным сокетом. В нём уже реализован протокол для обмена данными - простое деление по нулевому байту.
хм, я и через обычный сокет оборванные сообщения получаю, тут еще и от принимающей стороны всё зависит

Старый 17.11.2015, 10:22
Tails вне форума Посмотреть профиль Отправить личное сообщение для Tails Найти все сообщения от Tails
  № 8  
Ответить с цитированием
Tails
 
Аватар для Tails

блогер
Регистрация: Dec 2008
Адрес: г. Чебоксары
Сообщений: 2,259
Записей в блоге: 6
Цитата:
Сообщение от bifidokk Посмотреть сообщение
хм, я и через обычный сокет оборванные сообщения получаю, тут еще и от принимающей стороны всё зависит
Сам по себе бинарный сокет работает на tcp, отправленный поток байтов будет гарантированно получен в таком же виде на клиенте.
Стало быть, ошибку надо искать где-то в протоколе чтения данных из сокета, на стороне сервера или клиента, или в неправильном использовании протокола, или в потере соединения.

Использовать нулевой байт для разделения блоков данных - на мой взгляд очень плохая практика. Как-то даже тут на форуме уже кто-то сталкивался с проблемой xml сокета, когда передаваемые данные содержали нулевой байт (вроде как было число float), из-за чего эти сообщения не правильно интерпретировались. (Приходили обрезанные сообщения по нулевому байту)

Если сокет предполагается использовать для передачи самых разных данных, то нужно использовать более универсальные протоколы.
Добавлю, что xml сокет годится только для передачи текстовых данных и никаких других.
__________________
Дети не должны знать о своих родителях


Последний раз редактировалось Tails; 17.11.2015 в 10:45.
Создать новую тему Ответ Часовой пояс GMT +4, время: 00:25.
Быстрый переход
  « Предыдущая тема | Следующая тема »  
Опции темы
Опции просмотра

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

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


 


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


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