Size: a a a

2020 April 07

I

Igor in DevOps
Alexander
У тебя в любом случае есть схема базы. Как минимум, в твоей голове и в твоем коде.
только для юзеров
источник

A

Alexander in DevOps
Igor
ради публичных данных - можно модуль к джинксу подрубить, и получится открытое кв-хранилище. Самое тяжелое держать статикой, а всякие мелкие настройки + текст - в редисе
Постгрес тоже можно, но лучше не надо. Потому что сторадж с http-интерфейсом - это еще не сервис.
источник

I

Igor in DevOps
ну типа если много сложного поиска появляется с джоинами и прочим, то тогда конечно постгрес. А если хватит публичного кв с простым поиском/сессии, то редис. Так?
источник

I

Igor in DevOps
CouchDB, кстати, в каких случаях можно рассматривать как альтернативу?
источник

A

Alexander in DevOps
Igor
CouchDB, кстати, в каких случаях можно рассматривать как альтернативу?
Давно его не трогал. Ну и в интернет его выставлять тоже лучше не надо.
источник

A

Alexander in DevOps
Igor
ну типа если много сложного поиска появляется с джоинами и прочим, то тогда конечно постгрес. А если хватит публичного кв с простым поиском/сессии, то редис. Так?
А что ты в базе собираешься хранить?
источник

I

Igor in DevOps
в редисе - таблицу индексов, в КХ - логи, в постгресе - юзеров
источник

I

Igor in DevOps
насчет остального (статика) - я думаю, как лучше: в стороннем CDN, в стороннем S3,  в своем S3, в своей статике на диске и отдавать джинксом
источник

I

Igor in DevOps
Все решения плюс-минус одинаковые
источник

A

Alexander in DevOps
Igor
в редисе - таблицу индексов, в КХ - логи, в постгресе - юзеров
Как ты собираешься логировать и ограничивать доступ к данным в редисе?
источник

I

Igor in DevOps
для публичных данных использовать отдельную базу, ограничение доступа там не требуется. Логгирование идет на уровне джинкса - там видно, откуда стучатся и за чем стучатся
источник

I

Igor in DevOps
сессии можно в  другой базе хранить внутри редиса
источник

I

Igor in DevOps
просто не реализовывать в джинксе к ней доступ
источник

A

Alexander in DevOps
Igor
для публичных данных использовать отдельную базу, ограничение доступа там не требуется. Логгирование идет на уровне джинкса - там видно, откуда стучатся и за чем стучатся
Просто мне не очень понятно, почему не юзать для хранения списка индексов тот же постгрес, который у тебя уже есть. Readonly-ручку для отдачи данных из таблицы не то, чтобы сильно сложно сварганить. Что ты пытаешься оптимизировать? И нужна ли эта оптимизация?
источник

I

Igor in DevOps
не. под таблицей индексов я имел ввиду какой-то сервис, который может сказать, на какой сервак стучаться, чтобы получить ту или иную статику. Частично это можно, конечно, сетью и балансировщиками разрулить, но куда быстрее будет спрашивать сразу конкретный сервак
источник

I

Igor in DevOps
Например, у тебя есть картинка, которая лежит на 3 серверах среди всех. Ты днс-ами разруливаешь, чтобы все эти 3 сервера были доступны по одному имени. Но таких групп серверов может быть несколько, и в редисе как раз лежит (хэш картинки - днс-имя серверов, где она лежит)
источник

I

Igor in DevOps
там вроде так и так надо спрашивать какой-то сервис, где лежит конкретная статика
источник

A

Alexander in DevOps
Igor
Например, у тебя есть картинка, которая лежит на 3 серверах среди всех. Ты днс-ами разруливаешь, чтобы все эти 3 сервера были доступны по одному имени. Но таких групп серверов может быть несколько, и в редисе как раз лежит (хэш картинки - днс-имя серверов, где она лежит)
Я бы тогда тем более в постгрес положил, т.к. он не in-memory.
источник

I

Igor in DevOps
а причем здесь In-memory?
источник

I

Igor in DevOps
ну типа если картинка не является охереть какой важной, то вроде достаточно 99,9999% вероятности ее отдачи
источник