Size: a a a

pgsql – PostgreSQL

2021 January 16

am

a m in pgsql – PostgreSQL
То есть, следите за логикой: они думают, что однажды я вспомню, что полгода назад написал что-то важное, захочу прочитать —  а архив доступен только по подписке! И я побегу покупать подписку? Ну не дураки ли? Зачем мне доступ к неактуальным для меня сообщениям? Ладно, я все.
источник

D

Dmitriy in pgsql – PostgreSQL
a m
Я тут последние пару лет гонял личный проект с трафиком в 50 000 ежедневных рыл из поисковика. Вывалил так вывалил, ага. И я бы руки оторвал тому, кто бы мне кеш между базой данных и приложением намастерил. Кеш для поисковиков начинается с HTTP 304. И там же его можно закончить, поставив http reverse proxy вперед (нынче самый популярный способ это сделать — тупо подключить клаудфлару).

Ну и кеш — это черная магия, с которой надо работать предельно настороженно и под лупой. Если человек сходу заявляет «без кеша нельзя», то он, скорее всего, просто обчитался хабрахабра.

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

> Вы точно уверены в том, что пишете?

Конечно. Сообщения в чате — это драгоценные данные, которые надо хранить вечно. Если не это, то я не знаю, что еще имеет смысл хранить. Банковские балансы?

> И что вместо него?

Не знаю. Я тупо на постгресе велосипедю. Когда сломается под нагрузкой, тогда буду гуглить, чего там люди вообще придумали для очередей. Пока не сломалось.
Вы пишете 50 000 ежедневных рыл из поисковика, как будто это сильно много. Для личного проекта - возможно. Но для серьёзного - это копейки, потому что это (если исходить, допустим, из равномерной нагрузки), это меньше одного запроса в секунду - то есть очень мало. Понятно, что нагрузка, скорее всего, не равномерная,  но даже так вряд ли там хотя бы 100 запросов в секунду будет.

> Кеш для поисковиков начинается с HTTP 304

Замечательно. И как этот кеш инвалидировать?

> просто морфируя запросы

Как? Если у запроса параметров весьма ограниченное число, то все возможные результаты будут в кеше

> Конечно. Сообщения в чате — это драгоценные данные, которые надо хранить вечно.

Вы где-то видели в поисковой выдаче ссылки на страницы из чатов? Не форумов, а именно чатов с реалтаймом.

> Если человек сходу заявляет «без кеша нельзя», то он, скорее всего, просто обчитался хабрахабра

У меня в конторе есть проект, где тяжёлые запросы к БД. И в самом лучшем случае они выполняются за 40-60 мс. Выборка из Redis занимает раз в 10 меньше времени.

> Я тупо на постгресе велосипедю

При трафике 2 запроса в секунду (в среднем) это вполне имеет право на жизнь.
источник

am

a m in pgsql – PostgreSQL
Не, простите, но я совсем все.
источник

D

Dmitriy in pgsql – PostgreSQL
a m
Не, простите, но я совсем все.
Ок)
источник

AL

Alexey Lesovsky in pgsql – PostgreSQL
Dmitriy
Ок)
а есть у вас на примете какой-то телеграм-чат (канал) где всякие бэкендерские штуки обсуждают?
источник

D

Dmitriy in pgsql – PostgreSQL
Alexey Lesovsky
а есть у вас на примете какой-то телеграм-чат (канал) где всякие бэкендерские штуки обсуждают?
Есть неплохие чаты по NestJS и по Starlette/FastAPI. Но именно какого-то общего по бэкенду нет, хотя в этих двух общие вопросы по бэкенд-разработке часто обсуждаются (не только связанные с этими фреймворками).
источник
2021 January 17

DK

Dmitry Kolupanovich in pgsql – PostgreSQL
всем привет, работаю над миграцией процедур c MS SQL на postgre, столкнулся с проблемой процедура с простым select на MS SQL выдает данные, а на posgre нужно извращаться и писать return table и чтото типо такого, кто сталкивался с таким и как решал эту проблему?
источник

IC

Igor Chizhov in pgsql – PostgreSQL
А в чём проблема? Исторически в PostgreSQL были только функции. Хранимые процедуры появились не так давно, в 11 версии. И, насколько я помню, вернуть таблицу они не могут, только выходные параметры.
источник

VG

Viktor Grigorev in pgsql – PostgreSQL
Dmitry Kolupanovich
всем привет, работаю над миграцией процедур c MS SQL на postgre, столкнулся с проблемой процедура с простым select на MS SQL выдает данные, а на posgre нужно извращаться и писать return table и чтото типо такого, кто сталкивался с таким и как решал эту проблему?
Почему решили мигрировать, если не секрет?
источник

IZ

Ilia Zviagin in pgsql – PostgreSQL
Viktor Grigorev
Почему решили мигрировать, если не секрет?
Сравни по стоимости ...
источник

М

Максим in pgsql – PostgreSQL
Доброй ночи, подскажите пожалуйста, можно ли на уровне БД настроить условие, если в одной таблице ставится false, в другой таблице должен изменится статус в поле по ключу?
или делать такое только в рамках приложения можно?
источник

М

Максим in pgsql – PostgreSQL
например
users
groups ( ключ user_id -> users.id)

Если в users поставить пользователю active=false, чтобы в groups по полю user_id тоже проставился false
источник

D

Dmitriy in pgsql – PostgreSQL
Максим
Доброй ночи, подскажите пожалуйста, можно ли на уровне БД настроить условие, если в одной таблице ставится false, в другой таблице должен изменится статус в поле по ключу?
или делать такое только в рамках приложения можно?
Триггер?
источник

М

Максим in pgsql – PostgreSQL
Dmitriy
Триггер?
та можно триггер, но может нет такой практики, если у меня rest api приложение, может все надо в рамках приложения настраивать
источник

D

Dmitriy in pgsql – PostgreSQL
Максим
та можно триггер, но может нет такой практики, если у меня rest api приложение, может все надо в рамках приложения настраивать
Это бесконечные споры обычно, где это делать))
источник

D

Dmitriy in pgsql – PostgreSQL
Можно на уровне приложения в транзакции делать. Можно на уровне БД в триггере. Я бы на уровне приложения делал. Но это не значит, что это правильно.
источник

am

a m in pgsql – PostgreSQL
Максим
та можно триггер, но может нет такой практики, если у меня rest api приложение, может все надо в рамках приложения настраивать
Скорее всего, вам поле во второй таблице на фиг не нужно.
источник

m

maxp.dev in pgsql – PostgreSQL
a m
Я тут даже вспомнил про один «профессиональный» месседжер, который за платную подписку предлагает доступ к... истории сообщений. Интересно, кто-нибудь вообще ее покупает?
большинство тех, кто в работе юзают Слак покупают
источник

m

maxp.dev in pgsql – PostgreSQL
a m
То есть, следите за логикой: они думают, что однажды я вспомню, что полгода назад написал что-то важное, захочу прочитать —  а архив доступен только по подписке! И я побегу покупать подписку? Ну не дураки ли? Зачем мне доступ к неактуальным для меня сообщениям? Ладно, я все.
когда бизнеспроцесс в чатах, то без истории никак
источник

IZ

Ilia Zviagin in pgsql – PostgreSQL
a m
Скорее всего, вам поле во второй таблице на фиг не нужно.
+
источник