LINUX.ORG.RU

История изменений

Исправление grazor, (текущая версия) :

Ты хочешь чего-то странного, лучше попробуй описать проблему, которую решаешь.

Получается, у тебя есть разные инстансы бекенда и воркеры сельдерея. Ты хочешь при их рестарте очистить какой-то общий кэш. Не понятно, что такое их рестарт, потому что у тебя может отвалиться одна нода, а потом вернуться обратно - нужно ли тогда все чистить? Кто должен быть тем сигналом для очистки?

В такой формулировке самое близкое что приходит в голову - использовать в качестве идентификатора не pid, а версию приложения, например хэш коммита. Тогда при запуске новой версии старые ключи в том же редисе или мемкеше перестанут читаться. Надо только не забыть экспайр. И, возможно, тебе захочется какую-то очистку при ручном рестарте без смены версии, можно например в бекенде навелосипедить обработку сигналов, понимая, что тут может быть гонка между инстансами, но не очень на нее надеяться и быть готовым к тому что это не отработает. Либо зайти с другой стороны, и очищать все ключи текущей версии при старте бекенда или воркера, но и тут может быть гонка и проблемы.

Исправление grazor, :

Ты хочешь чего-то странного, лучше попробуй описать проблему, которую решаешь.

Получается, у тебя есть разные инстансы бекенда и воркеры сельдерея. Ты хочешь при их рестарте очистить какой-то общий кэш. Не понятно, что такое их рестарт, потому что у тебя может отвалиться одна нода, а потом вернуться обратно - нужно ли тогда все чистить? Кто должен быть тем сигналом для очистки?

В такой формулировке самое близкое что приходит в голову - использовать в качестве идентификатора не pid, а версию приложения, например хэш коммита. Тогда при запуске новой версии старые ключи в том же редисе или мемкеше перестанут читаться. Надо только не забыть экспайр. И, возможно, тебе захочется какую-то очистку при ручном рестарте без смены версии, можно например в бекенде навелосипедить обработку сигналов, понимая, что тут может быть гонка между инстансами, но не очень на нее надеяться.

Исходная версия grazor, :

Ты хочешь чего-то странного, лучше попробуй описать проблему, которую решаешь.

Получается, у тебя есть разные инстансы бекенда и воркеры сельдерея. Ты хочешь при их рестарте очистить какой-то общий кэш. Не понятно, что такое их рестарт, потому что у тебя может отвалиться одна нода, а потом вернуться обратно - нужно ли тогда все чистить? Кто должен быть тем сигналом для очистки?

В такой формулировке самое близкое что приходит в голову - использовать в качестве идентификатора не pid, а версию приложения, например хэш коммита. Тогда при запуске новой версии старые ключи в том же редисе или мемкеше перестанут читаться. Надо только не забыть экспайр. И, возможно, тебе захочется какую-то очистку при ручном рестарте, можно навелосипедить обработку сигналов, но не очень на нее надеяться.