![]() |
ИСТИНА |
Войти в систему Регистрация |
ФНКЦ РР |
||
Популярные на сегодняшний день очереди заданий можно разделить на универсальные, в которых реализовано множество (в том числе редко востребованных) функций, и СУБД-ориентированные. Последние проще устроены и органичнее смотрятся в составе современных информационных систем, однако в них мало внимания уделяется надежной поддержке разноплановых рабочих процессов, что важно в контексте создания отказоустойчивых и масштабируемых информационных сервисов. Авторами разработана и реализована легковесная очередь заданий на основе СУБД PostgreSQL. Данная СУБД поддерживает рассылку оповещений при модификации данных, что упрощает взаимодействие с очередью, а организация информации о рабочих процессах и заданиях в виде набора связанных таблиц удобна для отображения штатными средствами современных фреймворков. В программной реализации разработанной очереди основное внимание уделено надежной поддержке разнопланового набора групп рабочих процессов. Возможность резервировать группы процессов для определенных классов задач позволяет улучшить качество обслуживания для приоритетных пользователей системы и ограничить возможности анонимных злоумышленников в части проведения DoS-атак. Избавиться от избыточности в потоке пользовательских запросов помогает использование имен заданий в качестве первичного ключа, а также возможность указывать временной интервал, в течение которого полученные результаты работы задания сохраняют свою актуальность.