В современном мире важно быстро получать релевантные новости среди информационного шума, в том числе о работе, товарах и прочем. Однако, чтобы проверять обновления среди множества сайтов и приложений каждую минуту, нужно тратить слишком много времени. Можно делать это реже, например, раз в день, но тогда полученная информация становится более запоздалой. Хуже того, она может быть вообще уже неактуальна или потеряна.
Отсюда можно сделать вывод: важные сообщения должны быть доставлены как можно раньше, без задержки.
Для начала - нужен способ, чтобы автоматизировать эту проверку обновлений. Именно так работает RSS. Не нужно больше вручную посещать разные места. Специальное приложение, RSS клиент, сделает всю работу в фоновом режиме.
Никто не работает с RSS
Почему же это не работает? Поддержка RSS слабеет с каждым годом. Все больше популярных сервисов прекращают эту поддержку. Apple сделал это в 2019. Google прекратил обслуживать RSS в Google Groups в 2021.
Среди других причин важно также то, что RSS основан на опросе сервиса, что не масштабируется. Представим популярный сервис с 1 млн. подписчиков. Допустим, период обновления клиентом равен 15 минутам. Тогда сервис должен выдерживать нагрузку около 1000 запросов в секунду!
Теперь представим, что этот сервис публикует обновление примерно раз в день, в разное время. Тогда каждый день клиент будет делать 95 "холостых" запросов и лишь 1 будет приносить полезный результат. Таким образом, сервис должен выдерживать нагрузку, где почти 99% запросов - пустая трата. Здесь точные числа не так важны, так как, напомню, чем больше период обновления - тем более запоздалыми и менее ценными эти обновления будут.
Это общая проблема решений, основанных на периодическом "опросе". И популярным сервисам не очень нужно обслуживать такие "опросы", по крайней мере бесплатно. Это может быть и не слишком накладно, но предоставление ленты RSS - чистая благотворительность. Даже данных пользователя не насобирать. Вывод из этого следующий: сервис должен сам уведомлять клиента, чтобы избежать пустого расхода ресурсов.
Никто не хочет получать спам
Что же предлагают нам сервисы вместо RSS-лент? Они хотят, чтобы пользователь подписывался на обновления по почте и/или разрешил его уведомлять. Проблема в том, что пользователи терпеть не могут этого, как правило. Никто не хочет оставлять свой email или разрешать уведомления. Пользователи обычно избегают этого.
Разрешить сервисам уведомления - равно открыть портал в адъ получать спам. Мы тут же утрачиваем контроль над тем, что, где и когда мы получаем. И поэтому люди до сих пор предпочитают RSS. В их приложениях для чтения RSS всё доступно в одном месте и, как правило, удобно упорядочено. По сравнению с разного рода подписками, где сложно вообще помнить все эти сервисы, которые могут отвлечь в любое время, когда это удобно им.
То есть, при своей эффективности, уведомления имеют свой недостаток - клиент не контролирует их в общем случае. Что вызывет дискомфорт и отказ. Вывод следующий: клиент должен иметь возможность управлять как содержанием уведомлений, так и своими подписками на них.
Решение
На сегодняшний день ни RSS, ни различные реализации уведомлений не позволяют фильтровать содержание сообщений. Именно по этой причине был создан сервис Awakari. Просто подписывайтесь ставьте лайк и указывайте что вы хотите (или не хотите) получать, например, по ключевым словам:
Сервис позволяет получать сообщения из большого количества различных источников, список которых постоянно растет.
Реализация сервиса минималистична (всего около 100 тыс. строк кода ????), Awakari не хранит никаких данных пользователей, всё отдано на откуп сторонним сервисам. В качестве средства доставки на данный момент используется Телеграм:
Комментарии (108)
Mabu
10.01.2024 10:19+12RSS не масштабируется
RSS это просто XML‐файл на диске, он не может масштабироваться по определению.
сервис должен выдерживать нагрузку около 1000 запросов в секунду!
популярный сервис с 1 млн. подписчиковВаш вебсервер не может держать 1000 соединений — смените вебсервер.
Если на вас вебсервер зайдёт весь этот миллион подписчиков чтобы посмотреть страницу index.html, вы тоже обвините язык разметки гипертекста, что он не масштабируется?
akurilov Автор
10.01.2024 10:19-4RSS подразумевает поллинг. Не существует пуш реализаций
Ваш вебсервер не может держать 1000 соединений — смените вебсервер.
Ни яблоко, ни гугл менять веб сервер не стали. Факт остаётся - поддержку RSS просто прекращают
alexxisr
10.01.2024 10:19Никогда не разбирался - а как работают пуш-уведомления в браузере? Я честно говоря думал, что браузер за ними также периодически куда-то обращается. Или сервер прямо может послать сообщение на браузер за натом в произвольный момент времени?
akurilov Автор
10.01.2024 10:19Есть различные протоколы websocket, sse и тп
Akuma
10.01.2024 10:19И это, внезапно, те самые 1 000 000 соединений с веб-сервером. Они, кстати, куда затратнее раздачи статики
akurilov Автор
10.01.2024 10:19+1а в чем проблема 1 млн соединений? пусть себе висят. это потянет даже один инстанс. лимит у ядра линукса - 1,048,576 файловых дескрипторов
Akuma
10.01.2024 10:19Эм. Ну это тяжелее раздачи статики вообще-то.
Потому как этот млн соединений надо не только держать, но и отправлять по ним что-то. Вот только когда клиент запрашивает инфо - она ему нужна. А когда вы отправляете свою новость на весь миллион соединений - 90% нафиг оно не нужно и это, опа, лишняя нагрузка.
Уведомления (веб-сокеты сюда же) - это не для рассылки "всем", это для отправки сообщений конкретным клиентам в реалтайме. И это вообще не замена RSS, это просто разные вещи.
akurilov Автор
10.01.2024 10:19Так здесь рассылается лишь то, что нужно конкретному клиенту. Поэтому если сообщение матчится с миллионом клиентов, значит оно интересно им всем
Akuma
10.01.2024 10:19Я вам про нагрузку, вы мне про полезность. Ну вы уж определитесь.
Миллион запросов на статику можно раздать достаточно дешево, а то и вообще не за свой счет (CDN от Cloudflare бесплатен).
Миллион пушей - ну попробуйте, че уж. Не мнимый, а реальный миллион одновременных соединений. Вот вам реальный опыт: https://habr.com/ru/companies/vk/articles/331784/
Обратите внимание на подсчет памяти, например.
mayorovp
10.01.2024 10:19Вот только когда клиент запрашивает инфо - она ему нужна.
Если клиент запрашивает RSS-ленту, то он ещё сам не знает есть ли там нужная ему информация.
Насколько я знаю, RSS - это всего лишь формат файла, а не протокол, потому там нет даже механизма отбрасывания старых "новостей". Клиенту остаётся лишь периодически запрашивать одно и то же в поисках изменений.
arokettu
10.01.2024 10:19Да, протокол там HTTP в котором есть такая замечательная вещь как ETag
akurilov Автор
10.01.2024 10:19Etag не поможет, уже здесь обсуждали. Не позволяет кэшировать на стороне CDN
akurilov Автор
10.01.2024 10:19И что с того? Откуда CDN узнает, изменилась лента или нет у самого сервиса?
akurilov Автор
10.01.2024 10:19Как правило, сервисы ничего не знают о CDN. И в общем, не должны.
По ссылке я наблюдаю какой то очень уж странный костыль, о котором надо знать заранее, автоматизировать и ещё, похоже, заплатить
arokettu
10.01.2024 10:19+1Если сервис использует CDN, то он конечно же о нем знает. Если нет, то я не понимаю кто, как и зачем в вашей картине мира использует CDN и как CDN по-вашему узнает об изменениях просто в вебе?
akurilov Автор
10.01.2024 10:19-1Кэш в принципе должен быть прозрачен как для клиента, так и для сервиса. Сброс кэша по вашей ссылке - скорее ручная операция при аварии. Тем более там лимит на частоту операций. Этот способ никак не может использоваться для нормального режима работы
arokettu
10.01.2024 10:19Вот захожу я на сайт просто, без подписок по всяким протоколам, и там я тоже напарываюсь на необновленный кэш что ли? Да, обычно это сброс не по урлу, а по тегу, но он будет
akurilov Автор
10.01.2024 10:19Если по ETag, то запрос доходит до сервиса и обрабатывается там. Сервис сам должен ответить 200 или 304, не важно.
akurilov Автор
10.01.2024 10:19CDN не знает, обновлена ли лента у сервиса или нет, пока сам не пойдёт и не спросит
arokettu
10.01.2024 10:19+1А почему вы /index.html и /feed.xml отдаете разными механизмами? В них буквально один и тот же контент. Если вы кешируете одно, то надо кешировать и другое, и тогда либо надо сбрасывать кеш на оба, или не сбрасывать ни на один
mayorovp
10.01.2024 10:19Да, соглашусь, идиотской передачи файла на каждый запрос можно без труда избежать. Но заголовки никуда не денутся.
akurilov Автор
10.01.2024 10:19Если по ETag, то запрос доходит до сервиса и обрабатывается там. Сервис сам должен ответить 200 или 304, не важно.
Не туда ответил
arokettu
10.01.2024 10:19Не существует пуш реализаций
akurilov Автор
10.01.2024 10:19WebSub не присылает RSS файл, это принципиально другое.
У меня есть план добавить поддержку подобного, но мне более перспективной кажется поддержка ActivityPub
arokettu
10.01.2024 10:19Он присылает уведомление что надо сходить за файлом и создавался специально как расширение для лент Atom
ActivityPub же не гарантирует доставку, это протокол сходный с Email по принципу работы - если не доставлиось, то потерялось. WebSub же наоборот, гарантирует что вы получите пропущенное либо при следующем уведомлении, либо при поллинге.
akurilov Автор
10.01.2024 10:19Activitypub доставляет постом на вебхук подписчика. Это исключает транспортные потери, по крайней мере
arokettu
10.01.2024 10:19Как? Поломалась сеть между 2 узлами и всё
akurilov Автор
10.01.2024 10:19То есть WebSub publisher должен надёжно хранить состояние каждого подписчика? Это уже совсем другое дело) теперь понятно, почему так мало публичных websub источников
arokettu
10.01.2024 10:19+1Нет, я выше объяснял почему ему это не надо. Есть конечно тоже риск что за время даунтайма напишут больше чем $rss_length постов, но на практике я с таким не сталкивался, а вот с потерей постов и распаданием тредов на ActivityPub серверах - постоянно
akurilov Автор
10.01.2024 10:19Теперь понял. Потому что содержание не приходит вместе с пушем
Идите сами выгребайте, что уже читали, а что нет
arokettu
10.01.2024 10:19+1Потому что содержание не приходит вместе с пушем
Не совсем. Потому что содержание может быть получено даже если уведомление не дошло
Идите сами выгребайте, что уже читали, а что нет
Для этого у сообщений есть уникальные ID
akurilov Автор
10.01.2024 10:19И все же activitypub популярнее будет, чем websub
https://trends.google.com/trends/explore?date=today 5-y&q=Wesub,Activitypub&hl=en
Может, конечно, хайп на ровном месте
arokettu
10.01.2024 10:19+2Если исправить опечатку, то примерно на уровне до октября 2022, когда Маск купил Твиттер и завирусился Мастодонт как альтернатива
Но ActivityPub безусловно более популярен, потому что это протокол соцсетей (и он очень плох именно в этом своем сегменте)
А WebSub действительно довольно редок, из крупных площадок его использует на вскидку только Medium, но это потому что крупные площадки либо не поддерживают RSS, это факт, либо не обновляли его поддержку десятилетиями, когда WS еще не существовал. Большая часть контента который генерит RSS это статические блоги, они как раз поллингом неплохо обходятся
Firsto
10.01.2024 10:19+6В современном мире важно быстро получать новости
Да кто все эти люди, откуда у вас столько времени, когда вы успеваете читать всё?
Расскажите, сколько у вас каналов обновлений и какой объём новостей вы потребляете, мне правда интересно. :)
akurilov Автор
10.01.2024 10:19Простой пример: поиск работы. Вы бы не хотели ограничивать свой поиск одним лишь условным superjob. Для этого вам понадобится множество источников. Причём вы можете даже не все их знать. Это означает фильтрацию в потоке сообщений неограниченной ширины.
slivkarmy
10.01.2024 10:19+3Да кто все эти люди, откуда у вас столько времени, когда вы успеваете читать всё?
По работе - 194 каналов. Не так часто все они обновляется и часто практикую "отметить как прочитанное" не читая содержимое ленты. Если вкратце, в эти 194 ленты входят
- Коммиты из github-а. С фильтрацией
- твиты разных людей и компаний (nitter.privacydev.net)
- лиды с хабра, weblancer или пикабу
- инстрамы твиты телеграмы вк конкурентов (https://feed.eugenemolotov.ru - я там админю)
- подкасты
- прочее
Пользуюсь не инструментом, который тут рекламируется, а Tiny Tiny RSS.
mayorovp
10.01.2024 10:19-2Разрешить сервисам уведомления - равно
открыть портал в адъполучать спам. Мы тут же утрачиваем контроль над тем, что, где и когда мы получаем.Если что, разрешение на получение уведомлений отзывается парой кликов.
Alex_v99
10.01.2024 10:19+3Сейчас это сервисами элегантно обходится замешиванием спама и полезных сообщений в один канал. Т.е., например, банковское приложение будет спамить своей рекламой, а если отключишь то потеряешь и сообщения о движении средств на счете.
akurilov Автор
10.01.2024 10:19-1Нет, например, чтобы удалить половину своих подписок вам потребуется:
Вспомнить их все
Пройти по каждому и разобраться в уникальном способе отписки "парой кликов". Может быть. Ну если повезет. Ой, у нас отписка сломалась, позвоните в поддержку. Ваш звонок очень важен для нас.
mayorovp
10.01.2024 10:19-1Вы издеваетесь? "Настройки" - "Конфиденциальность и безопасность" - "Настройки сайтов" - "Уведомления" - и там виден список ВСЕХ сайтов, которым дано разрешение на уведомления. Что тут, блин, вспоминать-то?
Но на самом деле это требуется только если приходится помогать кому-то другому избавиться от спама. Потому что лично у меня необходимость удалить подписку может возникнуть только в том случае, когда с какого-нибудь сайта прямо сейчас пришёл раздражающий спам. Нет нужды вспоминать тот сайт, который прямо сейчас у тебя открылся по клику.
И вот тут разрешение на уведомления отзывается ровно в два клика (в три если считать открытие сайта):
Картинка
akurilov Автор
10.01.2024 10:19Подписки бывают не только "разрешением сайту уведомлять". Есть ещё email, моб приложения и что-нибудь ещё, о чем так сразу и не вспомнить
mayorovp
10.01.2024 10:19Да, но я-то оспариваю тезис "Разрешить сервисам уведомления - равно
открыть портал в адъполучать спам." При чём тут email-то?akurilov Автор
10.01.2024 10:19Некоторые сервисы требуют email и потом невозбранно спамят, например. Email - это тоже уведомления. Есть разные способы навязать вам спам
mayorovp
10.01.2024 10:19-1У вас в посте этот тезис высказан сразу после скриншота с запросом уведомления в браузере.
Вот не понимаю как можно смотреть на ту картинку и думать "ну, автор явно под уведомлениями подразумевал не то, что в браузере называют уведомлениями, а более широкое понятие".
k12th
10.01.2024 10:19+2Awakari не хранит никаких данных пользователей, всё отдано на откуп сторонним сервисам
В наш век утечек, взломов и таргетированной рекламы "сторонние сервисы" звучит как ругательство...
akurilov Автор
10.01.2024 10:19Это всё равно лучше, чем логинить сторонним сервисом (а сейчас так делает большинство) и вдобавок к этому, ещё что-то хранить о пользователях у себя.
ironcat
10.01.2024 10:19Для любителей RSS есть RSS-Bridge
https://github.com/RSS-Bridge/rss-bridge
В котором есть и Телеграм и ВКонтакте и прочие новостные безRSSные сайты...akurilov Автор
10.01.2024 10:19Буду говорить о себе - меня не устраивает такое решение.
RSS интерфейс означает поллинг. Это означает, что придётся обрушивать весь поток информации с множества источников на клиента. Если я хочу выбирать из как можно большего числа источников, в пределе - со всего интернета? Это работать не будет.
Нет фильтрации.
Минимальная задержка примерно равна периоду поллинга. Это может быть слишком много для некоторых use case.
Awakari - polling terminator, то есть работает наоборот.
ironcat
10.01.2024 10:19+1Буду говорить тоже о себе. Tiny Tyny RSS как раз в паре с RSS-Bridge и решают все Ваши вопросы и с даже фильтрацией со всего интернет, извините. Ну разве кроме 3-го пункта если для него есть use case...
akurilov Автор
10.01.2024 10:19Фильтрациии я не нашёл среди фич
Придётся хостить самому и собирать все источники, невозможно использовать общую коллекцию источников. То есть выборка ограничена теми источниками, о которых вы итак уже знаете
Проблема поллинга не столько задержка, сколько в вынужденном выборе между холостой нагрузкой и большей задержкой
ironcat
10.01.2024 10:19В TTRSS Кроме фильтрации ещё есть возможность самому создавать каналы на базе фильтров. И подписываться на них :) .Т.е. почти Ваш функционал...
По вопросу self-hosting это большой плюс.
Никому не должно быть интересно, что мне интересно.
akurilov Автор
10.01.2024 10:19-1Тогда вы теряете потенциально полезные сообщения из источников, которые вы ещё не знаете
ironcat
10.01.2024 10:19+1Не теряю, а не вижу ненужный мне спам, извините. Я уже взрослый мальчик, чтобы найти в этих ваших интернетиках нужный мне контент.
Вы правильно говорите, что каждому свой кейс....
akurilov Автор
10.01.2024 10:19Именно об этом я и говорю. Как только возникает необходимость получать сообщения из неограниченного множества источников, тут же во весь рост встает проблема спама. Поэтому в комплекте с широким потоком данных должна идти хорошая фильтрация.
slivkarmy
10.01.2024 10:19Фильтрациии я не нашёл среди фич
Она есть.
akurilov Автор
10.01.2024 10:19+1Регулярные выражения - это то, от чего я отказался на самых первых этапах прототипирования. Должно быть что то вроде текстового поиска с поддержкой стемминга.
Не нашёл способа группировать условия в более сложные с применением логики "и", "или" и тп
Не нашёл численных условий. Например, матчить сообщения, где поле "цена" меньше 1000
arokettu
10.01.2024 10:19Инстаграм не работает, правда, для меня это стало поводом забить на Инстаграм
GavriKos
10.01.2024 10:19+4>В современном мире важно быстро получать новости
Нет. Неважно. Это зачастую ведет как раз к стрессу, выгоранию и прочему - желание быть обо всем в курсе.
Нужные новости вас сами найдут. А без остальных можно обойтисьakurilov Автор
10.01.2024 10:19Тут важно, чтобы новости были релевантными. Речь как раз об избавлении от шума при ожидании нужного сигнала. Допустим, вы захотели купить айфон 15 дешевле 100 рублей. Вы заходите на условное авито и делаете поиск по параметрам. Ничего не найдено. Чтобы позже проверить, не появился ли данный товар, вам нужно повторять поиск снова и снова. И вот, надоело. Тем временем товар появился и его уже купил тот, кто быстрее проверял наличие.
Awakari позволяет задать критерии и ждать. Доставка релевантного сообщения занимает десятки миллисекунд.
GavriKos
10.01.2024 10:19А можно пример как сконфигурить этот ваш авакари, чтобы вот он мониторил авито на тему 15 айфонов дешевле какой то суммы?
Мне чет кажется на формирование запроса который работает всегда и правильно я потрачу больше времени, чем на периодическое обновление страницы.Вообще если честно из статьи понятно ровынм счетом ничего. В чем преимущество сервиса? Он не поллит сервисы? Поллит же, иначе как он получит обновления? Тогда к чему это сравнение с РСС?
akurilov Автор
10.01.2024 10:19Вот так.
Авито вам не нужен, вам нужен айфон 15.
Если очень нужно именно Авито, то можно в продвинутом режиме указать условие "source: avito.ru"
Численные условия поддерживаются, но на практике контент с Авито пока не парсится так, чтобы цена была отдельным атрибутом.
Авакари не использует поллинг если на входе телеграм канал, но поллит ленты типа RSS и делает это "один раз для всех". И избавляет клиента от необходимости поллить.
alexs963
10.01.2024 10:19+1Вы опять предлагаете централизованное решение, которое будет собирать информацию по интересам пользователей, и в итоге может использоваться произвольным методом. Использование RSS из-за своей природы ограждает от этого. А нагрузка даже миллиона пользователей будет не существенной, как тут уже заметили т.к. это фактически раздача статического файла.
akurilov Автор
10.01.2024 10:19Не совсем так. Файл ленты RSS меняется в произвольный момент времени и не может быть закэширован.
Но в остальном так, получается, что я предлагаю поделиться вашими интересами в обмен на то, что сервис может найти нечто даже из неизвестных вам источников. Тут надо подумать...
akurilov Автор
10.01.2024 10:19Я думаю, что я могу доказать, что я не собираю никакой информации о пользователях. Код, отвечающий за аутентификацию открыт:
https://github.com/awakari/webapp/blob/bb79dbc3cd7e43b87b5404b7012dbcbd9c30a3bd/web/login.js#L10
В качестве юзер ид используется префикс identity provider и сторонний юзер id из которого я не могу понять, кто это.
Например, для телеги юзер ид выглядит так:
tg://user?id=34955377
Этот юзер добавил какое то порно в источники. Как я могу узнать имя нашего первого героя?
GavriKos
10.01.2024 10:19Т.е. это все равно RSS, но перенесенный с моего клиента на ваш сервер? Почему вы тогда пишете о преимуществах для удаленного сервера, предоставляющего RSS? Ведь для него разницы нет. Ну и непонятно чем отличается это все от innoreader например.
Ваш запрос по айфону ломается элементарно. Объявление 15 iphone и всЕ, ну и как выяснили - цены не парсятся. Мой вам совет - смените таргетирование своего сервиса. Пока ваш промоушн его не выдерживает совершенно.akurilov Автор
10.01.2024 10:19Сервис читает RSS один раз сразу для всего множества пользователей. Кроме RSS поддерживаются и другие типы источников (пуш)
Как минимум Innoreader платный и не делает пуш
Объявление 15 iPhone найдёт указанную в примере подписку. Здесь вы не понимаете, о чем говорите
ibnteo
10.01.2024 10:19-
Но читает же его.
Похоже надо делать сервис по подписке на уведомления, но с учётом взаимных подписок, чтобы избавиться от спама.
akurilov Автор
10.01.2024 10:19Так пусть авакари поллит множество RSS источников, в чем проблема? Более того, опрос множества источников каждые N минут - теперь не проблема клиента.
Что значит взаимная подписка?
-
Akuma
10.01.2024 10:19+1Не понял, 1000 запросов в секунду для статического XML в, пусть, пару сотен Кб - это много чтоли? Купите еще один ВПС за 200 руб, раз уж у вас миллион подписчиков, не разоритесь.
akurilov Автор
10.01.2024 10:19+1Много или мало - но это лишняя нагрузка на сервис. К тому же и на клиент, который делает холостые запросы, которые не приносят нового результата. Это всё может быть мало, пока мало клиентов и они редко запрашивают обновления. И для клиента - пока у него мало лент.
И это ещё не всё - добавьте лишнюю задержку
ibnteo
10.01.2024 10:19+1По идее, это многовато, причём большая часть запросов бесполезная, надо делать обратную связь.
raskal
10.01.2024 10:19+3То чувство, когда прочитал полученную по rss статью о плохости rss. Про 1k rps - ну вы обновляйте фид чуть реже, да положите его в кэш, сделайте пагинацию. Можно подумать, что тысяча rps это нонсенс в век, когда системы автоматического мониторинга собирают десятки тысяч метрик в секунду, а добавить еще ядро на виртуалку стоит 50 центов в месяц и две минуты времени.
akurilov Автор
10.01.2024 10:19Выше уже отвечал
Реже = больше задержка
Чаще = больше холостой нагрузки
Поддержка сервисами RSS слабеет с каждым годом
raskal
10.01.2024 10:19+2Ваше мнение про то, что новости нужно получать в ту же секунду, как только произошло событие, сильно преувеличивает реальное положение дел, на мой взгляд. Прелесть RSS как раз во многом в том, что оно совершенно асинхронное. Кто-то выпускает новости, а ты заходишь потом и читаешь. Оставьте мне решать, как распорядиться моим временем, пожалуйста, не надо бороться за мое внимание.
Что же касается "Поддержка слабеет" - она поэтому и слабеет, внимание пользователя так не удержишь. Но я вот искренне надеюсь, что рано или поздно мы зайдем на новый виток спирали и поддержка RSS на сайте-агрегаторе будет фичей удержания аудитории. По большому счету так оно и есть - я вот в RSS получаю заголовки и первых пару абзацев почти везде, а потом читать иду на сайт, если новость интересная. Сайт от этого только выигрывает - просто так на Хабр я не приду, мне интереснее условного Клеппмана перечитать - а из RSS-фида перехожу регулярно.
akurilov Автор
10.01.2024 10:19Зависит от кейса. В некоторых случаях минимизация задержки может давать конкурентное преимущество, например в торговле или какой-нибудь крипте.
Кто-то выпускает новости, а ты заходишь потом и читаешь. Оставьте мне решать, как распорядиться моим временем, пожалуйста, не надо бороться за мое внимание.
Не аргумент. Вы же телеграм не удалили с мобильного телефона из-за этого? Правильно, вы включаете заметные уведомления когда вам это удобно. Поэтому пуш ничем не хуже для клиента, чем поллинг RSS читалок. Мой сервис должен доставить клиенту сообщение, телеграм клиента его сохранить для прочтения потом. На доставке работа моего сервиса закончена. Когда вы прочитаете сообщение - это вам решать.
По большому счету так оно и есть - я вот в RSS получаю заголовки и первых пару абзацев почти везде, а потом читать иду на сайт, если новость интересная.
Самое смешное, что в этом же треде критиковали RSS за одни лишь заголовки, что надо идти на сайт и читать полное содержание.
qw1
10.01.2024 10:19Awakari is Great!
Does Facebook serve Awakari?
OK, Awakari is dead.akurilov Автор
10.01.2024 10:19Нет проблем интегрировать фэйсбук, инстаграм, твиттер или что там ещё. Сервис пока только появился. Если будет спрос на конкретную интеграцию - можно сделать
qw1
10.01.2024 10:19Как я понимаю, проблема будет та же, что и с RSS - корпорация не захочет сотрудничать. И вероятно при превышении лимита запросов от ваших серверов просто вас забанит.
А так-то, можно и для RSS сделать посредника, который бы вытягивал контент из соц. сетей.akurilov Автор
10.01.2024 10:19Это не проблема клиента.
В принципе решается путем партнерства в будущем.
qw1
10.01.2024 10:19Если вы не поддерживаете facebook, vk, instagram, twitter, discord и прочий зоопарк, то это проблема клиента - вы наобещали, что всё будет в одном месте, и обманули.
Это в принципе никак не решается, потому что фейсбуку выгодно, чтобы пользователь сидел в его приложении и читал его ленту, а не сидел в вашем приложении и читал вашу ленту. Непримиримое противоречие.
akurilov Автор
10.01.2024 10:19Если проблема решена, то это не проблема клиента. Пока что такой проблемы нет, так как нет и клиента, который бы просил что то, кроме того что есть. Будет запрос - будет сделано. И тогда это будет моей проблемой.
Это в принципе легко решается, всевозможных способов достать контент из фэйсбука - тьма. В тч "официальных" https://developers.facebook.com/docs/
qw1
10.01.2024 10:19Куда ни ткни, там всё закрыто юридическими запретами.
Например, Meta Platform Terms:a. Prohibited Practices. v. Placing Platform Data on, or otherwise making Platform Data available to, a search engine or directory without our prior express written consent
Instagram Platform:
Don't use the Instagram Platform to simply display User Content, import or backup content, or manage Instagram relationships, without our prior permission.
Официальных способов транслировать контент меты в своё приложение - не существует.
itmind
10.01.2024 10:19Я получаю новые статьи с Хабра через RSS (из настроенной под себя ленты). Ваш сервис будет фильтровать статьи только с нужных хабов? Если же, например, ваш сервис просто по RSS берет данные с Хабра, тогда не понимаю почему в статье говорится, что RSS - это плохо.
akurilov Автор
10.01.2024 10:19Легко. Я таким образом получаю статьи с хабра не только по нужным хабам но и по ключевым словам.
Авакари получает данные из RSS один раз для всех своих клиентов. На авакари поллинг заканчивается.
AndrewBond
10.01.2024 10:19Прочитал статью. Так и не понял, почему конкретно для меня это должно быть лучше RSS.
Прочитал комменты - вероятно речь идет о том, что помогать это должно владельцам вебсайтов. Это сомнитлеьно. К примеру, flickr поддерживает RSS по каждому автору. Авторов, само собой over 100500. Значит нужно полагаться, что куча народа выберет одни и те же фиды (хотя бы с каким-то пересечением). Это сильное допущение.
На всякий случай сходил, зарегистрировался, добавил пару фидов с опросом через 5 минут. Убедился, что в RSS появились новые записи. Полчаса прошло - где я их должен искать? В телеграмме? на вебстраничке?
Вероятно, это какой-то демонстратор технологий без реального интерфейса. тогда сорри.
akurilov Автор
10.01.2024 10:19Тк это pub/sub сервис, то для получения чего либо надо создать соотв подписку. Возможно, сообщения с добавленных вами источников получил кто-то другой, если это соответствует его интересам
AndrewBond
10.01.2024 10:19Ладно. по отдельности все слова понятны, но в целом... что такое "создать подписку" и тп.
Я дальше проверять не буду, сорри. Это для какой-то другой аудитории.
akurilov Автор
10.01.2024 10:19AndrewBond
10.01.2024 10:19я на эту вкладку не переходил. Добавил пару своих RSS. Да ладно, неважно. уже разлогинился и прибил бота.
enamchuk
10.01.2024 10:19+1Много лет в качестве клиента RSS использую почтовый клиент The Bat! (и прямому назначению - почты, конечно, тоже).
Настроек немного, но оно работает, вполне удобно.
Подписки на Хабр, уведомления с каналов Youtube и т.д.ibnteo
10.01.2024 10:19Про The Bat можно уже сказать, что используется ужеболее чем пару десятилетий. Похоже веб3 надо реализовывать по тому же принципу, чтобы люди могли пользоваться десятилетиями им.
bdgtw
Дизайн сайта, конечно, ужасен, как будто тёмная тема, которая не до конца корректно применилась. Тёмное на тёмном, плохо читающийся текст и прочие прелести.
akurilov Автор
Спасибо, поправлю