|
Система комментирования в реальном времени
|
|||
---|---|---|---|
#18+
Сервис наподобие Disqus - много страниц, под страницами блок древовидных комментариев. Среди плюшек и свистелок - реалтайм, комментарии появляются по мере того как их отправляют. Тоесть функционал уже и чат напоминает. Пока всё у заказчиков в голове - стоит задача выбрать инструменты хранения. Backend на NodeJS, клиенты коннектятся по вебсокету, со стороны сервера вот думаем чё как... Понятное что нужен брокер сообщений - думали взять Redis чисто для коммуникации, а хранить данные в Postgres используя расширения ltree для хранения комментариев. Но с учетом, что сложных выборок нет - может быть нам не нужен Postgres? Была предложена идея взять Kafka и хранить комменты прямо в нём. Там брокер сообщений, и что-то типа БД. Может кто умнее еще что подскажет? Задача сделать так чтобы горизонтально масштабировалось относительно без боли. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.01.2021, 20:40 |
|
Система комментирования в реальном времени
|
|||
---|---|---|---|
#18+
RUSYA, Ну идея с Kafka не так уж плоха, если не нужно хранить сообщения "вечно". А так по хорошему ещё надо прикрутить что-нибудь вроде Elastic, для поиска по сообщениям. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.01.2021, 10:36 |
|
Система комментирования в реальном времени
|
|||
---|---|---|---|
#18+
mad_nazgul, Спасибо за ответ. Но всетаки почему бы тогда не Redis чисто как брокер? Вот тут коллега рассказывает про это https://habr.com/ru/post/440546/ А хранить в Elastic а не в postgre и других реляционных базах. Наверное конечно уместнее задать это в сообществе Redis'a \ Kafka ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2021, 00:35 |
|
Система комментирования в реальном времени
|
|||
---|---|---|---|
#18+
RUSYA, Предлагаю почитать про Redis streams (появились в 5) и ReJSON. Тут и полноценный брокер с доставкой одному или одному из группы, и хранение. Современный Редис как оперативное хранилище и как брокер имхо сильно недооценен. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.01.2021, 01:13 |
|
Система комментирования в реальном времени
|
|||
---|---|---|---|
#18+
RUSYA почему бы тогда не Redis чисто как брокер? Вот тут коллега рассказывает про это ... |
|||
:
Нравится:
Не нравится:
|
|||
31.01.2021, 01:15 |
|
Система комментирования в реальном времени
|
|||
---|---|---|---|
#18+
RUSYA Но с учетом, что сложных выборок нет - может быть нам не нужен Postgres? Была предложена идея взять Kafka и хранить комменты прямо в нём. Там брокер сообщений, и что-то типа БД. Редактирование, удаление, модерирование, блокировка... Брокер нужен для масштабирования и коммуникации. Хранить он может, доставать как будете и все вышеуказанные операции выполнять? А насчёт "сложных выборок нет", ну это очень-очень наивно )) ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2021, 06:48 |
|
Система комментирования в реальном времени
|
|||
---|---|---|---|
#18+
RUSYA Там брокер сообщений, и что-то типа БД. Это не бд. RUSYA Но всетаки почему бы тогда не Redis чисто как брокер? Брокер между чем и чем? Хочешь кластер делать? Кмк, это тебе не нужно, хватит и одного инстанса ноды. Не понятно, что тебе советовать, потому что не понятно, что ты хочешь и в каком объёме. Чатик. Ну ок, для 3.5 пользователей чатик можно сделать на одной ноде и сообщения сбрасывать в хоть файлы / mysql / sqlite. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2021, 07:12 |
|
Система комментирования в реальном времени
|
|||
---|---|---|---|
#18+
Может подскажите хорошие курсы, чтобы подробно изучить эту тему. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.08.2021, 09:58 |
|
Система комментирования в реальном времени
|
|||
---|---|---|---|
#18+
Kornilov Artemiy Может подскажите хорошие курсы, чтобы подробно изучить эту тему. Насчет курсов не знаю, но можно посмотреть вот эту книгу. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.08.2021, 13:30 |
|
|
start [/forum/topic.php?fid=35&msg=40043867&tid=1552161]: |
0ms |
get settings: |
10ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
30ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
55ms |
get tp. blocked users: |
2ms |
others: | 14ms |
total: | 148ms |
0 / 0 |