Re: Re: Re: Re: Re: Краткие итоги встречи 12.08.2010

Sergeev Serge simne at yandex.ru
Wed Aug 18 07:27:55 PDT 2010


В XML, да и в XMPP тоже, не предусмотрено никаких ограничений на размер и никаких проверок и никаких предварительных деклараций размера.
Например, ничто не мешает XMPP клиенту держать в ростере миллион контактов и соответственно, при подключении сервер должен будет отправить клиенту весь этот список с информацией о статусе этих клиентов, тк других вариантов в протоколе не предусмотрено.

Реально известны случаи, когда таким образом (огромным списком контактов) по-глупому заваливали целые социальные сети, и пока со стороны XMPP никаких телодвижений по этому поводу не слышно, а соцсетям рекомендуют работать не через XMPP а через API.

18.08.10, 00:27, "Евгений Карпенко" <notformat at gmail.com>:
> Если честно, я редко видел чтобы через xml передавали большую структуру
> 
> 18 августа 2010 г. 0:21 пользователь Sergeev Serge <simne at yandex.ru> написал:
> > Не, как раз по траффику XML не худший вариант, точнее он очень хорошо сжимается всякими разными gzip encoding, и потом можно сделать какой-то сжатый XML четко по стандарту.
> > Но вот то что даже полностью приняв абстрактный XML, никогда не знаешь сколько памяти потребуется на его парсинг - очень большой минус.
> > 
> > 17.08.10, 19:53, "Евгений Карпенко" <notformat at gmail.com>:
> >  
> > > XMPP - это хрень которая ест трафик)
> > >
> > > 17 августа 2010 г. 19:21 пользователь Sergeev Serge <simne at yandex.ru> написал:
> > > > Я уже говорил: все протоколы семейства XMPP имеют врожденный недостаток - они используют XML, для парсинга которого требуется много памяти и много процессорных тактов.
> > > > Точнее проблема не в том что этого много, а в том что этих ресурсов требуется НЕОПРЕДЕЛЕННО много - в хороших бинарных протоколах обычно можно с заранее с высокой точностью посчитать, сколько времени и памяти потребуется для парсинга пакета, и соответственно, знать сколько вычислительных ресурсов потребуется для работы с предполагаемым числом клиентов.
> > > >
> > > > Такая неопределенность допустима для хоббийных и академических проектов, но в реальной жизни требуется еще на этапе эскизного проектирования прикинуть, сколько потребуется вычислительных ресурсов, с точностью хотя-бы в пределах +-10%, иначе следующий этап - выделение денег может никогда не наступить.
> > > >
> > > > Поэтому лучше разрабатывать протоколы не имеющие такого недостатка и учиться например у того-же Эрланг.
> > > > Собственно, насколько я понимаю, в Perl6 будет предусмотрен (или уже есть) встроенный бинарный протокол пересылки сложных структур, который нужен например для работы лямбды.
> > > >
> > > > 17.08.10, 11:51, "Igor nevermind" <igor.bliss at gmail.com>:
> > > >
> > > > > Не вполне понял, о чем речь. Что вы имеете в виду под словом XMPP2 ? Перловый модуль? Реализацию jabber сервера? Еще что-то?
> > > > > Насчет BOSH. BOSH -- это HTTP интерфейс к XMPP серверу, а не очередная реализация server-push для HTTP протокола, хотя он может выступать в этой роли. А здесь почему-то все не смотрят дальше server-push
> > > > >
> > > > > 17 августа 2010 г. 10:22 пользователь Konstantin Cherednichenko <dshadowukraine at gmail.com> написал:
> > > > > > Ну WebSockets тоже стандарт... В Mojo он уже реализован.
> > > > > >
> > > > > > djabberd застрял в развитии уже года как 3. Нет в нем поддержки XMPP2...
> > > > > >
> > > > > > Я думаю лучше разработать сервер на WebSockets. При желании можно написать GUI клиента на perl + QT/GTK/TK/Wx...
> > > > > >
> > > > > >
> > > > > > 2010/8/16 Igor nevermind <igor.bliss at gmail.com>
> > > > > > > Возможно, оно и получится технически. Но зачем? BOSH -- почти стандарт (http://xmpp.org/extensions/xep-0124.html, http://xmpp.org/extensions/xep-0206.html) и, вероятно, имеет смысл придерживаться стандартного интерфейса. Хотя бы потому, что не исключено, что многие пользуют коктейль из перла, питона и сишных демонов. А так можно было бы соорудить интерфейс к тому же каталисту -- тем более, что подвижки в этом русле вроде есть. Да и перловый XMPP сервер имеется (djabberd)
> > > > > > >
> > > > > > > 16 августа 2010 г. 15:40 пользователь Konstantin Cherednichenko <dshadowukraine at gmail.com> написал:
> > > > > > >
> > > > > > >
> > > > > > > > а если заменить BOSH сервер на WebSockets?
> > > > > > > >
> > > > > > > > 2010/8/16 Igor nevermind <igor.bliss at gmail.com>
> > > > > > > >
> > > > > > > >
> > > > > > > > > Я считаю гугль более правым чем оракел. Джаву давно уже пора изымать из чьей-нибудь собственности и стандартизировать, как это случилось с сями -- потому что объем написанного на ней кода просто огромен. Нужен прецендент!
> > > > > > > > > А BOSH сервер -- это коннекшн менеджер для XMPP (джаббер) сервера, который позволяет работать с джаббером через HTTP.
> > > > > > > > > Для реализации полной реальной интерактивности на сайте, например (чаты, мгновенные сообщения, онлайн игры и многое прочее)
> > > > > > > > >
> > > > > > > > > 16 августа 2010 г. 14:57 пользователь Sergeev Serge <simne at yandex.ru> написал:
> > > > > > > > > > 16.08.10, 11:06, "Igor nevermind" <igor.bliss at gmail.com>:
> > > > > > > > > > > К слову, у нас (в смысле, реализованный на Perl) до сих пор отсутствует BOSH сервер (у питоноводов оно называется Punjab). Как-то даже обидно, а?
> > > > > > > > > > Извините, я немного не в теме, а зачем нужен BOSH сервер?
> > > > > > > > > >
> > > > > > > > > > И заодно хотелось-бы услышать и вашу точку зрения по нашумевшему конфликту Оракла и Гугла на почве Андроид.
> > > > > > > > >
> > > > > > > >
> > > > > > > >
> > > > > > > >
> > > > > > > > --
> > > > > > > > Konstantin Cherednichenko
> > > > > > > > KC439-RIPE, KC96-UANIC
> > > > > > > >
> > > > > > >
> > > > > >
> > > > > >
> > > > > >
> > > > > > --
> > > > > > Konstantin Cherednichenko
> > > > > > KC439-RIPE, KC96-UANIC
> > > > >
> > >
> > >
> > >
> > > --
> > > noTformaT
> 
> 
> 
> -- 
> noTformaT



More information about the Kiev-pm mailing list