215 похожих чатов

С очередями всё просто. У вас есть выбор: либо вы

готовы потерять задачу, либо вы готовы на двойную обработку задачи, либо готовы положить сервис, в случае недоступности очереди.

если вы готовы потерять, то:
никакой репликации, ставите несколько нод, выдача id'шников внешняя (или uuid). кидаете задачи round-robin'ом, потребляете из всех
если какая нода сдохнет - задачи, лежащие в ней либо птеряются, либо выполнятся позже

если готовы задвоить, но не потерять:
ставите N(>1) очередей под одни и те-же таски.
всё, как с обычными БД. выбираете мастера, работаете только с ним, если отваливается, переключаетесь и т.п.

если нужна strong-consistency: вам точно нужны очереди? ))

чаще всего применяется первый подход
для второго хорошо подходят идемпотентные операции (тогда можно не париться из-за двойной обработки)

Т.о. queue, как базовый элемент конструктора, может использоваться, но для распределённых/отказоустойчивых архитектур требуются дополнительные на[д]стройки. Как впрочем и с любым инструментом

2 ответов

6 просмотров

👍 спасибо. как я понимаю первый подход с tarantool/queue не будет работать из-за id'шников. Остается второй (ну или ждать xqueue) ;)

Попиарил этот пост Монса в своём канале: http://t.me/ctorecords

Похожие вопросы

Обсуждают сегодня

вопрос: кто как решает вопрос с динамической подгрузкой скриптов для отдельных страниц с включенным turbo router?
Sergei Toroptsev
25
Сообщение* в закодированном виде. То есть, просто сделать sendMessage?text=Привет бла-бла! не получится, надо в HEX переводить, и добавлять процент, типа такого: sendMessage?t...
КТ315
21
А случайно нет ли в паскале штатной возможности передать указатель и количество туда где array of в качестве аргумента?
zamtmn
25
Anyone here suffers from unexplained aural migraines, who would be up for talking for a bit? Doesn't *have* to be aural, but I am not asking about headaches, I mean actual mi...
Martin Rys
58
> комьюнити я бы не судил по этому чату. Как мы видели по статам просмотров нескольких телеговских постов, то в чате их набивается 30-40 или даже выше, когда как общаются акти...
Constantin F.
4
Как сделать чтобы short точно был 2 байта, int точно 4 байта ?(без стандартных библиотек, ну типа без int16_t, int32_t)
#
8
Ну раз я пока тут, задам пару глупых вопросов. Зачем писать на ассемблере если компилятор довольно умный, а ассемблер много времени занимает? В каких прикладных задачах сейчас...
Максим Рябцев
20
Всем привет. Испытываю проблемы в работе БД, а именно огромного роста логов, такого характера: 024-05-16 18:39:07 +05 sentry sentry [unknown] 1050169 7-1 app-sentry01.corp.ru>...
Alexey
2
Только такой if ($modx->event->name == 'OnBeforeCartItemAdding') { $meta = $params['item']['meta']; $lang = $modx->getConfig('_lang'); // проверяем, задана ли опция i...
Multi Web
1
Хм. А телеграм апи работают через HTTP?
The Bird of Hermes
14
Карта сайта