Написал довольно подробный обзор своей малышки - slowpoke на хабре

Написал довольно подробный обзор своей малышки - slowpoke на хабре:

https://habr.com/post/354224/

Как к ребенку отношусь, ей богу. С придыханием жду первых комментариев, хотя казалось бы - насрать и забыть. Оно работает, меня устраивает. Проклятая социализация, надо как то избавляться от зависимости от чужого мнения.

Habr.Com
slowpoke — не самая быстрая база данных
Всем привет. slowpoke это key/value хранилище данных, написанное на стандартной библиотеке golang. Slowpoke обладает минималистичным, удобным апи и подходит...

Более научно

Более научно:
http://research.cs.wisc.edu/adsl/Publications/alice-osdi14.pdf
Смысл сводится к тому, что каждый файловый дескриптор должен быть либо открыт монопольно на запись, либо обложен блокировками/мьютексами (single writer). Close ничего не гарантирует. Write ничего не гаранитрует. in sync we trust. А теперь сюрприз - sync отключен практически во всех базах данных by default. Мешает побеждать в бенчмарках. В slowpoke каждая операция завершается sync. Каждая.

Очень надеюсь что slowpoke станет дефолтным стораджем для ipfs.io. Это было бы большой победой здравого смысла над бенчмарками. Обсуждаем с разработчиками.

Research.Cs.Wisc.Edu


Канал 404

Канал 404

Уже скоро год - при помощи @telefeedbot, в канал https://t.me/joinchat/AAAAAEJJCKLNNUuwTInJKw
собирается rss с сайтов vc.ru, roem.ru и habr.ru
Делал для себя, но вдруг кому то еще пригодится

Довольно удобно, когда все в одном месте . Хотя лента и неидеальна и есть пропуски новостей.

Telegram
Channel 404
Channel 404

Количество сайтов которые рассылаются @telefeedbot - перевалило за 17000.

Количество сайтов которые рассылаются @telefeedbot - перевалило за 17000. На скрине хеши урлов

Утро начал с разврочивания Интерпланетарной Файловой Системы (ipfs.

Утро начал с разврочивания Интерпланетарной Файловой Системы (ipfs.io) Как то все слишком просто. Скачал. Запустил. Работает. Невозможно заблокировать. Будущее рядом.

slowpoke - data engine

slowpoke - data engine

сегодня наконец состоялся долгожданный релиз движка баз данных slowpoke:
github.com/recoilme/slowpoke

к
моему удивлению, несмотря на простоту дизайна, разработка заняла более месяца. правда по сути за это время было написано несколько вариантов.

slowpoke это простая, хорошо масштабируемая key/value база данных с удобным минималистичным апи. скорость была отодвинута на задний план, но к моему удивлению она оказалась не намного медленней популярных аналогов (я рассматриваю прежде всего boltdb). а в каких то уникальных кейсах и на порядки быстрее.

апи слоупоке состоит всего из нескольких команд:
- set/get
- sets/gets
- keys и close

в конечном варианте я полностью отказался от сторонних библиотек и реализовал весь функционал на стандартной библиотеке golang. в отличие от аналогов (rocksdb, leveldb, boltdb, badger и тд) - в апи встроены функции для работы с пулом ключей. основная команда для выборки значений - keys - позволяет получить отсортированный диапазон ключей с лимитом, офсетом, выбрать по значению или префиксу. в паре с keys можно использовать как gets - принимающий на вход масссив ключей, и возвращающий пары ключ/значение - так и sets - в свою очередь сохраняющий массив пар за один sync. при разработке я отталкивался от многочисленных кейсов, возникающих в реальных задачах и старался покрыть наибольшее их колличество, не перегрузив апи ненужным функционалом. в итоге есть и вторичные ключи и массовые операции и выборки - что уже позволило мне полностью отказаться от фаербейс и болтдб.

ну самое главное - в движке нет никакой "магии". ни lsm-tree, ни btree ни mmap ни прочих странных инженерных решений. при этом тот же sets - позволяет использовать ее и в типичных кейсах leveldb - для хранения например цепочки блокчейна, а быстродействие сохранено на приемлемом уровне. забавно читать в архитектуре других баз данных - я точно не понимаю как это работает, но думаю говард чу знает что делает. поэтому я сделал также. ok.

думаю у меня получилось лучше чем у говарда чу.

Ub.Com
UnitedBitcoin - LINKING VALUE & SERVING THE WORLD!
UnitedBitcoin is a super joint credit carrier with the target to establish a powerful global network and support the eco-system and improve collaboration by using credit from the UB foundation.

Прокси это конечно так себе спасение.

Прокси это конечно так себе спасение. Они постоянно ложатся.

Пример постоянно обновляемого списка http proxy без паролей:

http://pubproxy.com/api/proxy?format=txt&type=http&level=anonymous&limit=20&last_check=60

Попробовал и @socks5_bot - постоянный реконнект( Что будет после отключения телеграм - сложно представить. Точнее несложно - лягут. Публичные прокси тоже постоянно ложатся - но их список непрерывно ротируется и я думаю данный способ более надежен. Хотя конечно лучше поднять свой прокси - если есть сервер. Библиотек - полно: https://github.com/armon/go-socks5

В этой связи наверное был бы уместен бот, постоянно пингующий список и вываливающий в топ - прокси с минимальной задержкой (проверить прокси можно например курлом - "curl -x http://125.212.207.121:3128 https://telegram.org") А еще лучше - сайт, на котором все это складывать. Но таких сайтов вобщем то навалом (http://spys.one/proxys/US/) - и проблемы это не решает. Даже если прокси из 80 раз 80 раз ответил на пинг - ничего не гарантирует того, что через час он отвалится. Интересно начнут ли обыватели платить за сервисы типа vpn осознав это? И ждет ли нас расцвет подобных сервисов - или все эти сервисы так и останутся уделом маргиналов. Посмотрим. Лично я решил не делать ни бота ни сайт с прокси для обхода блокировки. Не вижу красивого решения(

Pubproxy.Com


Клон tggram.

Клон tggram.com

Ура, у сервиса появился полноценный клон: https://tgrm.me
👍🤷‍♀️
Все очень похоже на tggram.com - я подключил их бота к этому каналу, сайт должен создасться тут
https://tgrm.me/recoilmeblog/
Можно сравнить с
http://recoilmeblog.tggram.com/

Лил, есть проблемы с эмоджи, скоростью и нет превью ссылок

Tggram.Com
TgGram: Create a blog from a Telegram channel
TgGram is blog platform for Telegram.