Comments 7
сходу вижу проблему с переполнением и прочим если захотят "навредить" пользователю такого эрзац S3 хранилища (про инъекции не говорю, рассматриваем данный код как пример концепции)
то есть нужен уровень авторизации
а далее мы пришли к брокеру, то есть тот же NATS JetStream полностью закроет по функционалу описанное вами, плюс куча фишек сверху начиная от вариаций хранилища и заканчивая нормальной архитектурой для построения сети
А покажете пример реализации хранилища на основе NATS JetStream?
Безопасность, авторизацию, многопользовательскую поддержку можно сделать фансервисом или в ядре. Данные подписывать, в частности.
это вам в документацию за примерами, там явно описываются варианты с "бессрочным хранением" хотя и не рекомендуют так делать
я в целом не понял зачем вообще такое лепить, причем на уровне ядра (раз уж авторизации и прочее будут выше). Какую задачу решает такой подход?
А зачем нужно бессрочное хранилище, разве что вам нужно соблюдать пакет Яровой? Если нет, удаляйте события после использования или вовсе используйте эфемерное хранилище.
Как я понял, NATS JetStream это очередь, она без сомнения лучше будет себя чувствовать в качестве хранилища, чем SQL, который приведён для примера. Поднимите Муксалму с NATS JetStream, похвалитесь результатами спидтеста...
почитайте документацию. JetStream может быть чем угодно - очередью, зайчиком, хранилищем. Точнее основная цель там именно гарантированный брокер даже при разрывах и потерях, но границы параметризации очень гибкие (я его вообще для примера привел, похожего хватает на разных языках, задача типовая)
вы так и не ответили зачем. какие задачи должен решать ваш подход
Мой подход реализует (как частный случай) HTTP-прокси и прохождение по нему трафика между приёмником и передатчиком. JetStream имеет свой разнесённый HTTP-прокси? Если нет, то теперь, с Муксалмой - да :)
Я допускаю, что совсем непонятно объяснил в статье, я только учусь. Муксалма это не хранилище. Это то, что использует ваше хранилище для своих пакетиков.
NATS позволяет строить распределенные децентрализованные сети что позволит сообщению от одной точки быть прочитанным в другой точке, которая не имеет прямой связи меж собой
но это лирика, распределенку можно и "в лоб" на том же Играсиле построить очень легко
Я все равно не понял зачем http-прокси. Точнее у меня у самого валяется самопис для проксирования http что бы можно было прокидывать с хостинга доступ к ресурсам на VPS не засвечивая сам VPS (и у меня там все, вплоть до http/2.0 и вебсокетов поддерживается потому как чаше всего прометеус прокидываю) но у меня там нет вообще никакой базы, прокси же. Что прочитал то и отдал.
Хранение что бы отдать через время и/или иному подключению это уже задачи брокеров, не важно натс, кроль или иные
Muxalma — обмен пакетами данных через общее хранилище