Обновить
19
Алексей Касьянчук@DEgITx

Senior System Software Developer

14
Подписчики
Отправить сообщение

librats: Выпуск версии 1.0.x (библиотека для распределённых P2P-приложений). Так же релиз rats-search 2.0.28

Уровень сложностиПростой
Время на прочтение3 мин
Охват и читатели18K

Всем привет! Я продолжаю развивать свою библиотеку для создания распределённых приложений, которая уже легла в основу новой версии rats-search (распределённого торрент-поисковика) и, судя по всему, UltraVNC (VNC клиент).

Она позволяет развернуть собственную P2P-сеть, связать пользователей между собой и выстроить коммуникацию посредством различных потоков данных (бинарных, строковых и т.п.). Главная особенность — автоматическое обнаружение участников (peer discovery), что крайне актуально в условиях постоянных блокировок и сетевых ограничений.

На данный момент библиотека поддерживает языки C/C++, Android (Java), Python и Node.js (Javascript).

Это очередное обновление и ещё большая стабилизация различных функций. Обо всём подробнее далее.

Последний стабильный релиз на сегодня — 1.0.0. Исходный код и бинарные файлы доступны для скачивания c github.

Читать далее

librats: Выпуск версии 0.7.x (новая библиотека для распределённых P2P-приложений). Так же релиз rats-search 2.0

Уровень сложностиПростой
Время на прочтение3 мин
Охват и читатели11K

Всем привет! Я продолжаю развивать свою библиотеку для создания распределённых приложений, которая уже легла в основу новой версии rats-search (распределенного торрент-поисковика).

Она позволяет развернуть собственную P2P-сеть и связать пользователей между собой. Главная особенность — автоматическое обнаружение участников (peer discovery), что крайне актуально в условиях постоянных блокировок и ограничений сети.

На данный момент библиотека поддерживает языки C/C++, Android (Java), Python и Node.js.

С момента выхода прошлой статьи накопилось много приятных изменений, о которых я и хочу рассказать. Кроме того, в этот раз я затрону и сам rats-search новой версии.

Последний стабильный релиз на сегодня — 0.7.0. Исходный код и бинарные файлы доступны для скачивания для:

Читать далее

librats: Выпуск версии 0.5.x. Ускорение поиска пиров, алгоритм spider, поддержка JavaScript, Python и многое другое

Уровень сложностиПростой
Время на прочтение2 мин
Охват и читатели11K

Привет! Работа над ядром поисковика rats-search продолжается. Новая версия библиотеки librats (v0.5.3) приносит важные архитектурные улучшения для построения распределенных сетей в условиях NAT и блокировок.

Ключевые изменения:

Унифицированный API (FFI): Завершена интеграция с Node.js. В отличие от фрагментированных реализаций libp2p, librats предоставляет идентичный набор функций для C++, Python, Node.js и Android через FFI.

Эффективный DHT:

Реализован алгоритм Spider для прибегания с сбора announce.

Добавлена поддержка branch-factor и маршрутизации на основе задержек (RTT-routing).

Персистентность: Routing-таблицы сохраняются при перезапуске, что критически важно для связности сети в сложных сетевых условиях.

BitTorrent: Значительный рефакторинг и оптимизация модуля.

Платформы: Windows (x64), Linux (x64), Android (32/64), macOS (x64).

Читать далее

librats: новая библиотека для распределённых P2P-приложений

Уровень сложностиСредний
Время на прочтение15 мин
Охват и читатели16K

Всем привет! Я являюсь создателем распределённого поисковика rats-search на базе DHT ( GitHub ). Его принцип работы довольно прост: поисковик собирает торренты у всех участников сети и формирует большую распределённую базу для поиска, включая метаданные (например, описания и прочую информацию).

В этой статье я хочу рассказать о своей новой библиотеке для построения распределённых приложений (p2p), где знание IP-адресов участников не обязательно, а поиск ведётся через различные протоколы — DHT, mDNS, peer-exchange и другие. Думаю, с учётом постоянных неприятностей, которые происходят вокруг, это может оказаться полезным ;-).

Читать далее

“Блокировки которые никого не должны зацепить”.  Или как я восстанавливал работу Talkvio из-за блокировок Cloudflare

Уровень сложностиПростой
Время на прочтение3 мин
Охват и читатели24K

Немного предыстории, прежде чем начать — о том, что у меня за проект такой — Talkvio. Уже два года я в свободное от основной работы время разрабатываю свой пет-проект — Talkvio, альтернативу Пикабу, где всё должно быть лампово и плюшево.

Проект уже довольно сильно развился: там есть нейросети для проверки орфографии, автотегов и помощи в формировании контента и заголовков. Есть Android-клиент, а iOS-версия находится в разработке. Реализована похожая система кармы, как на Хабре, есть даже минусы (привет администрации Пикабу), и многое-многое другое.

У нас на ресурсе пользователи больше фокусируются на авторском контенте — всевозможных интересных статьях и т.п., помимо юмористического. То есть казалось, что ничего не предвещает беды.

Забегая вперед, чтобы читателю было интересно, ресурс НЕ использовал Cloudflare.

Читать далее

Talkvio — не капибара и не старый пикабу. Модуль серверной индексации для поисковиков для Nginx. Альтернатива Next.js

Уровень сложностиСредний
Время на прочтение9 мин
Охват и читатели3.8K

Читая такие статьи как про Капибару, мне хочется упомянуть один свой старый/новый проект, в изначальном виде я затеял как проект реставрации старого форума сети Минска (uruchie.org) из далеких 2006-2012 годов, который хранился у меня в замороженном виде последние 10 лет. Не так давно я решил его расконсервировать и заняться реставрацией в свободное время, того, фактически, что осталось еще со времен локальных сетей. 

Я сразу отбросил почти все что было, это старый движок vBulletin - на тот момент крайне перспективный и развивающийся движок форума на PHP, и убрав почти все, оставив только базу данных из 250 000 сообщений и 5000 пользователей начал реализовывать новые концепции которые хотелось видеть. Если кому-то интересно то, кстати, одна из причин гибели такого старого и долгого проекта был именно vBulletin и безопасность.

Ссылка на рабочую версия нового ресурса: https://talkvio.com (заходим, регистрируемся, пишем, предлагаем идеи)

За основу взял что душе угодно для таких целей:

Backend: NodeJS + MySQL + Redis + Manticore (у меня с ним был крайне приятный опыт на других своих старых проектах) + Bash + отдельные модули на Python + Nginx

UI: React

Дальше в статье будет рассказываться как в проекте организован серверный рендеринг исключительно для поисковиков, и как вы можете повторить опыт для своего JS проекта не выполнял почти никаких модификаций проекта на основе пакета Puppeteer + Nginx.

Читать далее

Информация

В рейтинге
5 284-й
Откуда
Рига, Латвия, Латвия
Дата рождения
Зарегистрирован
Активность