Читает чужие PR
Присоединился: 22 марта 2023 18:57
Последний визит: 6 октября 2026 06:44
Темы: 4 / Ответы: 26
Ответ
RE: Миграция ждала блокировку и на 4 минуты повесила все запросы к таблице

Лучший итог для миграции. Я бы ещё повесила алерт на транзакции дольше получаса

1 месяц назад
Ответ
RE: Заявка: полгода на Solid Queue вместо Sidekiq, что вышло

Спрошу сейчас то же, что спрошу в зале: как у вас с уникальностью джоб и ретраями платёжных задач? В Sidekiq это у многих держится на сторонних gem'ах...

8 месяцев назад
Ответ
RE: Джоба новогодней рассылки упала по памяти на 300 тысячах пользователей

Тут две проблемы, и вторая хуже первой. `each` по relation загружает все 300 тысяч разом, отсюда память, это лечится `find_each`. Но даже с ним одна д...

9 месяцев назад
Ответ
RE: Включили случайный порядок тестов, и каждый прогон падает что-то новое

Ещё классика: тест меняет настройку прямым присваиванием, например `PaymentGateway.timeout = 1`, и не возвращает обратно. Такое лучше делать через `al...

10 месяцев назад
Ответ
RE: Написал свои ретраи для внешнего API. Посмотрите, что тут не так

Пятнадцать секунд раз в пять минут - нормально. Плохо, если запуски начнут накладываться друг на друга. Когда поставщик лежит долго, у вас просто оста...

12 месяцев назад
Ответ
RE: Написал свои ретраи для внешнего API. Посмотрите, что тут не так

Чувствуешь правильно. Ловить надо только то, что имеет смысл повторять: таймауты, обрывы соединения и ответы 5xx. На 400 или 401 повтор ничего не даст...

12 месяцев назад
Ответ
RE: Копейки в счетах расходятся: НДС считаем во Float. Как правильно?

Можно ещё хранить суммы в копейках целым числом, в платёжках их так и передают. Но для счетов с НДС BigDecimal хватает

1 год назад
Ответ
RE: Письмо клиенту ушло, а заказ откатился. Колбэк внутри транзакции?

`after_create` выполняется внутри транзакции, до коммита. Письмо уже ушло, потом транзакция откатилась, а вернуть письмо нельзя. Нужен `after_create_c...

1 год назад
Ответ
RE: После встречи развели мосты: как вы добирались домой

Я на Васильевском. Вышла в 0:35, метро уже закрылось, пешком до Дворцового не успевала. Взяла такси, проскочили по Благовещенскому за несколько минут ...

1 год назад
Форум
Ответ
RE: credentials на три окружения: как не перепутать ключи и кто хранит master.key

И когда кто-то уходит из команды, а ключ у него был, перевыпускайте и master key, и сами секреты внутри

1 год назад
Форум
Ответ
RE: Индекс concurrently упал посреди ночи и остался INVALID. Что с ним делать?

strong_migrations ещё поставьте, он `add_index` без concurrently просто не пропустит. Новые люди в команде забывают про это чаще всего.

2 года назад
Ответ
RE: В модели заказа пять колбэков, и импорт старых заказов разослал письма

Если какие-то колбэки останутся, переведи их с `after_save` на `after_commit`. Сейчас `sync_to_warehouse` может отправить на склад заказ из транзакции...

2 года назад
Ответ
RE: Новый сервис на Rails 8: Solid Queue или всё-таки Sidekiq?

Ретраи только настройте явно через `retry_on`: у Active Job по умолчанию их нет, раньше это за вас делал Sidekiq.

2 года назад
Ответ
RE: rate_limit в контроллере не срабатывает локально, хотя на стейдже работает

Кеш. `rate_limit` считает попытки в `Rails.cache`, а в development по умолчанию `:null_store`, пока кеш не включён. Он ничего не запоминает, счётчик в...

2 года назад
Форум
Ответ
RE: Новый сервис на Rails 8: Solid Queue или всё-таки Sidekiq?

На 50 тысячах в сутки Solid Queue справится без вопросов, это меньше одной джобы в секунду. Плюс для меня такой: если положить очередь в основную базу...

2 года назад
Страница 1 / 2