Разработчики агрегатора RSS-лент Feedbin (https://feedbin.me/), реализованного в виде платного web-сервиса, объявили (http://blog.feedbin.me/2013/08/27/feedbin-is-open-source/) об открытии исходных текстов проекта. Отныне каждый желающий может развернуть данную систему для чтения RSS на своём сервере. Feedbin доступен (https://github.com/feedbin/feedbin) под лицензией MIT. Код написан на языке Ruby с использованием фреймворка Ruby on Rails, СУБД Postgres и NoSQL БД Redis.
Вместо с Feedbin также открыт код трёх сопутствующих проектов: refresher (https://github.com/feedbin/refresher) - сервис обновления RSS-лент; polyptych (https://github.com/feedbin/polyptych) - API для извлечения картинок favicons; camo (https://github.com/atmos/camo) - прокси для кэширования изображений и их отдачи только через HTTPS. В качестве причин открытия кода упоминается желание привлечь заинтересованных энтузиастов к развитию проекта, обеспечение максимальной прозрачности сервиса для пользователей и нежелание повторить судьбу Google Reader, потерянного для пользователей после закрытия коммерческого проекта.
<center><a href="https://raw.github.com/feedbin/feedbin/master/app/assets/ima... src="http://www.opennet.me/opennews/pics_base/0_1377686215.png" style="border-style: solid; border-color: #e9ead6; border-width: 15px;" title="" border=0></a></center>URL: http://blog.feedbin.me/2013/08/27/feedbin-is-open-source/
Новость: http://www.opennet.me/opennews/art.shtml?num=37762
> NoSQL БД Redisот создателей NoSQL БД "Текстовый файл"
Redis - это больше кеш.
Я бы сказал memcache с плюшками.
Со вкусными плюшками, надо сказать. Все эти сеты иногда очень в кассу
> Со вкусными плюшками, надо сказать. Все эти сеты иногда очень в кассуДля пыхеров. Которые не могут просто создать в памяти класс, который не умирал бы по отработки страницы. Кстати, сеты хоть в пыхе есть?
Не по теме поста, но по теме коммента отвечу - неприменительно к пыху, когда проект большой, создавать в памяти класс и хранить таким образом экземпляры кэша - всё равно тупняк... Потому что серверов много, процессов на каждом тоже много, GC может прийти и всё повесить напрочь, а если память разделяемая - управляемую переменную в неуправляемую область нормально ни в одном языке, насколько я знаю, не засунешь... И если бы даже засунул - всё равно держать мильён живых объектов дорого, т.к. памяти они всё равно занимают больше, чем в сериализованном виде.Посему даже Одноглазники, написанные на яве, всё сериализуют и хранят в разделяемых кэшах.
> Не по теме поста, но по теме коммента отвечу - неприменительно к
> пыху, когда проект большой, создавать в памяти класс и хранить таким
> образом экземпляры кэша - всё равно тупняк... Потому что серверов много,
> процессов на каждом тоже много, GC может прийти и всё повесить
> напрочь, а если память разделяемая - управляемую переменную в неуправляемую область
> нормально ни в одном языке, насколько я знаю, не засунешь... И
> если бы даже засунул - всё равно держать мильён живых объектов
> дорого, т.к. памяти они всё равно занимают больше, чем в сериализованном виде.Рапределение - это одно. Не думаю, что самым популярным использованием персонального rss-ридера будет распределённое использование. Плюс - оперативный кэш на самое необходимое, чтобы в инстансе был. Ибо ходить во внешний сервер - это лишняя коннекция. Это только в php на каждый чих нужна коннекция...
Я вообще сейчас на что-нибудь мелкое (а у меня всё мелкое, тыщу запросов ежесекундно никто не требует) просто в памяти храню, безо всяких баз, с синком на диск. Чтение - 1 раз, при запуске. Доступ - мгновенно. Никаких коннекций. Внутреннее устройство - примитивно. Красота и чудеса.
Но это не важно, а важно то, что в пыхе всего этого нет. Если пыхерам не напоминать ежедневно, что они самая низкая ступень развития веба, они об этом забывать начинают - память-то пыхерская.
А вообще, я не совсем не понимаю, зачем для персонального rss-ридера postgresql и redis и возня с ними. Там же не будет миллионов записей. Тут реально можно хоть в текстовом файле хранить и в памяти держать. Запустил и готово.
почему не будет? через пару месяцев будет больше мильёна, при условии что ты читаешь больше одной ленты. Старые записи же тоже хранятся, только помеченные как прочтенные
Миллион сообщений за 60 дней - это 700 сообщений в час, КРУГЛОСУТОЧНО. Вы читаете по 700 сообщений в час, включая до сна, после сна, вместо сна, до еды, после еды, вместо еды?Представляю, какая каша у вас в голове... И насколько ваша психика уже отторжена от внешних реакций...
> Миллион сообщений за 60 дней - это 700 сообщений в час, КРУГЛОСУТОЧНО.
> Вы читаете по 700 сообщений в час, включая до сна, после
> сна, вместо сна, до еды, после еды, вместо еды?
> Представляю, какая каша у вас в голове... И насколько ваша психика уже
> отторжена от внешних реакций...давай добавь себе опеннет или какой нибудь хабр в ридер и посмотри сколько тебе сразу сообщений придет?
И как уже выразились ниже это не персональный ридер
> давай добавь себе опеннет или какой нибудь хабр в ридер и посмотри
> сколько тебе сразу сообщений придет?Штук 40, по-моему. Но точно не скажу, я rss крайне редко пользуюсь. В любом случае - если эти сообщения не читать - то зачем они все нужны. Ну а если читать... это и есть тот джинн из бутылки, которого не вы контролируете, а который уже сам контролирует вас.
> И как уже выразились ниже это не персональный ридерЛогично. Потому что если я захочу его поставить себе персонально, то мне придётся ещё поднимать postgresql, redis, и пытаться со всей этой байдой взлететь. Хотя в тех же рельсах не принято к чему-то привязываться конкретному, это не пых, и большинство рельсоприложений - "просто запусти как-есть и получишь sqlite. который и 1 млн. записей легко выдерживает"
Потому что это не персональный rss ридер.
Ммм...
RSS-читалка. На Ruby. С БД.
Как-то чем дальше в лес, тем меньше я понимаю ход мысли современных разработчиков. Боюсь, следующим проектом на Руби с мускулом вполне может оказаться калькулятор.
А на чём православном пишут RSS-читалки благородные сэры ?
Видите ли. Дело в том, что я ну совершенно не хочу ставить себе ни Руби на рельсах, ни БД. Вот вообще не хочу. А читалку хочу. Страшно сказать, Оутлук мне позволяет читать в том числе и оупеннет-RSS. Наверняка есть и открытое что-то получше майкрософтовского изделия, не использующее стопиццот самых продвинутых технологий, которыми надо загадить свою машину просто для того, чтобы получить на неё текст с картинками.
Это не десктопная программа, оно поднимается на сервере и смотрится через браузер. Что-то не припоминаю, чтобы аутглюк мог в это.
Понял, спасибо за разъяснение. Да, пожалуй я не совсем прав.
Пожалуй ты совсем не прав, чего уж :)PS: В Оутглюке _ЕСТЬ_ база данных. И тут ты не прав :)+
> Пожалуй ты совсем не прав, чего уж :)
> PS: В Оутглюке _ЕСТЬ_ база данных. И тут ты не прав :)+Ну купи себе шоколадку, гуру :)
> Видите ли. Дело в том, что я ну совершенно не хочу ставить
> себе ни Руби на рельсах, ни БД. Вот вообще не хочу.
> А читалку хочу. Страшно сказать, Оутлук мне позволяет читать в том
> числе и оупеннет-RSS. Наверняка есть и открытое что-то получше майкрософтовского изделия,
> не использующее стопиццот самых продвинутых технологий, которыми надо загадить свою машину
> просто для того, чтобы получить на неё текст с картинками.не вопрос, за вас уже все подняли, можите пользоваться сервисом.
> RSS-читалка. На Ruby. С БД.Зато, блин, тут вам и постгр, и редис. Единственное что тyпые яблочные хипстеры не поняли что это недостаточно энтерпрайзно. Надо было оракл ставить. Вот оракл - это выбор серьезных пацанов. А постгр какой-то с редиской - это как хипстер с развязанными шнурками у своих кедов. Т.е. лох.
> Feedbin доступен под лицензией MIT."Разыскиваются лохи которые бесплатно поработают на коммерческую версию!"
А для веба всё, что не AGPL, это "работа на коммерческую версию".
ну так пили для себя и не открывай код.
> ну так пили для себя и не открывай код.форумные хомячки код не пилят. Под любой лицензией. Оне жрутЪ и срутЪ только :)
Использую tt-rssНаписано на распространенном пыхе, использует стандартные мускул/постгрес и имеет православную GPL3 лицензия
бородатый админ, с 2009 года висит на серваке tmux+newsbeuter+irssi.Бороду кстати тоже не брил с 2009 года.
> бородатый админ, с 2009 года висит на серваке tmux+newsbeuter+irssi.Бороду кстати тоже
> не брил с 2009 года.tmux не имеет православной лицензии ;)
>> бородатый админ, с 2009 года висит на серваке tmux+newsbeuter+irssi.Бороду кстати тоже
>> не брил с 2009 года.
> tmux не имеет православной лицензии ;)на n-ном вселенском соборе tmux был признан великомучеником...
> Бороду кстати не брил с 2009 года.слабак.
зачем нужна эта фигня? у гуглочиталки был крутой внутрений поиск, у «замен» нет нифига, кроме ЧСВ.
Поиск вполне себе есть у BazQux, Inoreader, Feedly и The Old Reader.
> Поиск вполне себе есть у BazQux, Inoreader, Feedly и The Old Reader.с «релевантностью», учётом русской морфологии, исправлением опечаток? чёрт, я даже заплачу за сервис с возможностью нормального поиска и нормальным импортом/экспортом.
>> Поиск вполне себе есть у BazQux, Inoreader, Feedly и The Old Reader.
> с «релевантностью», учётом русской морфологии, исправлением опечаток? чёрт,
> я даже заплачу за сервис с возможностью нормального поиска и нормальным
> импортом/экспортом.А Google Reader разве учитывал морфологию и исправлял опечатки? Он вроде как gmail просто по словам работал.
Релевантности пока ни у кого нет. Я когда в BazQux Reader поиск делал (я его разработчик) решил его оформить как фильтр -- мне он так показался полезнее. В принципе релевантность штука не сложная -- библиотеки для поиска как раз и выдают результат в порядке релевантности, но пока что-то никто не просил (а вот улучшения фильтров многие хотят).
Я в Google Reader поиск практически ни разу не использовал. Интересно, вы его как использовали: что-то совсем старое найти или что-то недавно прочитанное?
> А Google Reader разве учитывал морфологию и исправлял опечатки? Он вроде как
> gmail просто по словам работал.нет. это я виноват, не уточнил, что «просто хочу такое», а не продолжаю гуглоридер обсуждать.
> Я в Google Reader поиск практически ни разу не использовал. Интересно, вы
> его как использовали: что-то совсем старое найти или что-то недавно прочитанное?я его никак не использовал, потому что не использовал сам гуглоридер. а вот локально — чтобы найти просто «что-то», потому что «о, вспомнил, что в рсс про нечто читал, ща поищу». ну, и поиск по тэгам и моим личным комментариям к новостям. к сожалению, софтина была только как PoC, допиливать её я задолбался и выкинул совсем (это можно было только убить, а не починить). писать заново пока что нет никакого желания, а онлайновые нужных мне удобств не дают (я, например, хочу фильтр на входящие на скриптах, фильтры на раскидывание по категориям на скриптах и так далее — регэкспов мало). также хочу отдельного клиента, который может высасывать нужное по API (и для архива, и чтобы он мне скрипты запускал по условиям — напоминалки всякие и прочее). и ещё много чего хочу. и всё это большинству людей нафиг не нужно, поэтому никто за меня, увы, не сделает.
Жестко. В принципе можно использовать какой-нить ридер через API, чтобы он делал всю грязную работу по обновлению и разгребанию фидов, а софтина собственно пускай уже скриптует поверх. Но в целом да, такие навороты мало кому интересны.Для поиска по тегам хороши всякие сервисы для закладок (Pinboard особенно). Для поиска "что-то такое я уже читал" в принципе и без релевантности поиск подходит, т.к. это либо что-то свежее, либо можно уточняющими словами поискать.
дык «в принципе» всё или реализуемо, или есть как-то работающий инструмент. но хочется-то, чтобы удобно, комфортно, танцевало и кофе делало. :3