wiz 05.11.2010 13:09

0bytePubSubHubBub - сейчас!

Как сейчас?

Юзеры пишут посты, они появляются на главной (или не появляются) и в rss ленте. Но как подписчики узнают что пришло обновление? Никак. Они должны ломиться на сервер и постоянно спрашивать его «есть чо?». В результате либо обновления приходят хрен знает когда, либо итак стонущий сервер заваливается запросами.

Альтернатива



Главная лента сейчас уже вынесена в feedburner, который фактически проксирует главную ленту. Но есть ещё личные ленты участников, блогов и прочего, которое можно было бы себе добавить во всякие твитеры и буззы. На помощь приходит PubSubHubBub, тривиальный (для "издателя") протокол. Два простых изменения (см. патч) позволят обеспечить моментальную доставку любых обновлений без увеличения, и даже с уменьшением затрат.

Что это?

PubSubHubbub (PuSH) — это протокол, предложенный Google и призванный сделать более эффективным процесс доставки данных по каналам типа RSS от издателей к подписчикам. Центральное место в схеме, обеспечивающей работу протокола, отводится независимым хабам, выполняющим роль посредников между непосредственными источниками данных и конечными их получателями. При этом, хаб оповещает всех зарегистрированных у него подписчиков канала о поступлении новых данных сразу после их появления, одновременно передавая новую порцию данных.

Таким образом, если вы создаете приложение, занимающееся обработкой фидов в формате RSS или Atom, то можете заметно облегчить себе жизнь, возложив «черную» работу на хаб.


0byte

«Хочешь чтобы было хорошо - сделай это сам!»


Поскольку джанго-версия ещё даже не на горизонте, да и там запрос висит без реакции, я взял исходники нынешнего 0byte и сделал патч.

Он обеспечивает "пинг" только главной ленты, но добавить туда обновления лент юзеров и сообществ уже не составит труда. Но я просто не в курсе всех 0byte internals, поэтому не рискну туда лезть со своим говнокодом.

Все знающие php и внутренности 0byte приглашаются посмотреть, попробовать патч и убедить nvbn его включить (:

Почему сейчас?

RSS это не просто лента для читалок, а машинно-читаемая версия сайта. Соответственно, вместо того чтобы мучать хостинг парсингом человечьих страниц, все кому надо смогут использовать, например, superfeedr и получать изменения моментально, без старых постов и в унифицированом формате. А когда django-движок всё-таки выйдет... ничего не изменится - всё просто продолжит работать.

PS/Offtop

Если кому-то интересна технология и он хочет встроить её к себе в сайтик-бложек-магазинчик-whatever, можете обращаться на канале welinux@cjr.


Тэги: 0byte atom pubsubhubbub realtime rss web офигенчик
+ 6 -
Похожие Поделиться

silent 05.11.2010 13:27 #
По делу - rss умирает потихоньку, а в твиттере есть пользователь, который проксирует rss с welinux.

cblp 05.11.2010 13:30 #
И кто же убивает RSS?
wiz 05.11.2010 13:32 #
ATOM например.
silent 05.11.2010 13:40 #
я все свои подписки перенес в твиттер, все что смог. rss больше не пользуюсь вообще.
cblp 05.11.2010 13:47 #
Twitter — сервис, а не технология, он по определению слабее.
silent 05.11.2010 13:53 #
через этот "определенно слабый" сервис оповещаться о новых постах на welinux гораздо удобнее чем через rss или напрямую.
wiz 05.11.2010 13:58 #
этот маленький патчик сделает твоё использование твитера ещё удобнее.
wiz 05.11.2010 13:33 #
С какой задержкой он это делает?
silent 05.11.2010 13:38 #
А какая разница? Автор не хочет лезть на сайт постоянно, а просто получать обновления, насколько я понял по первому абзацу.
wiz 05.11.2010 13:59 #
автор хочет писать роботов :>
silent 05.11.2010 14:18 #
чорт, кто потер кусок коммента моего? >_
Zereal 05.11.2010 14:29 #
я. это оскорбление на самом деле и вообще довольно некорректно.
silent 05.11.2010 14:34 #
это не оскорбление, это объективная (!) констатация факта и похвальба автору топика
exelens 05.11.2010 14:34 #
И не 1 такой пользователь скажу я тебе честно.
silent 05.11.2010 14:57 #
ну я на @welinux подписан, вроде нормально все приходит, всего только один раз ошибку видел - в заголовке какая-то отладочная хрень от ActiveRecord опубликовалась.
exelens 05.11.2010 14:45 #
Не пойму как это всё относится к проекту welinux.ru
Это возможно относится к движку... Следовательно это оффтоп.

Но как подписчики узнают что пришло обновление? Никак.

О каком обновлении ты говоришь? Знаешь тут есть такая фишка, она называется лента. Не?

Ещё 1 момент.
Поскольку джанго-версия ещё даже не на горизонте

Ты откуда обладаешь такой информацией? Ты знаешь то чего не знаю я?

Все знающие php и внутренности 0byte приглашаются посмотреть, попробовать патч и убедить nvbn его включить (:

Сарказм не уместен. Если есть патч, достаточно скинуть его мне и нвбн в почту.
+ подробно русским языком пояснить почему он нужен и для кого.

Я ведь тебя предупреждал, что твои комменты и посты очень смахивают на деструктивные. Тебе больше всех надо? Не вопрос уйдёшь в бан.

Почему сейчас?

А зачем вообще?

Ты в курсе, что лента RSS для данного проекта не основная (приоритетная) вещь?

Последний раз предупреждаю: хватит писать всякую херь и показывать разработчика или администраторов в глупом виде.
silent 05.11.2010 14:53 #
Как всегда размахиваешь шашкой, а чувак-то вроде неплохую вещь предлагает добавить, причем небольшим патчем. Да и вроде не показывает он никого в глупом виде, а вот ты с этим комментом - показываешь :)
exelens 05.11.2010 15:03 #
Я закрывал глаза на мат которым ты пишешь.
Теперь ты ещё и обсуждаешь действия администрации =)
Поздравляю, бан на 7 дней.
wiz 05.11.2010 14:57 #
Это возможно относится к движку... Следовательно это оффтоп.

Ок. Перенесите куда считаете нужным. Касательно вилинукса отношение самое прямое - фича для него. А остальные инсталляции движка 0byte.php меня мало интересуют.

Если есть патч, достаточно скинуть его мне и нвбн в почту.

Мне хочется немного попиарить интересную технологию, которая сделает интернет более клёвым местом.

+ подробно русским языком пояснить почему он нужен и для кого.

об этом и пост + предыдущий ответ.