Гораздо лучшим решением было бы иметь избыточную базу данных, чтобы в случае, если одна из систем вышла из строя или стала недоступной, вы могли продолжить работу со своей второй базой данных.
Хранение данныхупорствовать в памяти - это решение, против которого я бы посоветовал.Вы говорите, что ожидаете относительно высокого пика.Если ваша БД недоступна во время пика, я не могу поверить, что вы сможете поставить в очередь все запросы в памяти в течение необходимого промежутка времени.Если они находятся в памяти, то любой тип сервера приложений (или аппаратная проблема, которая влияет на сервер приложений) может привести к полной потере всех ваших запросов в очереди.Это означает, что ваш интерфейс REST обманул своих абонентов.Вы вернули, что успешно сохранили данные, но не из-за сбоя как вашей БД, так и приложения.
Вам нужна либо избыточная база данных, либо постоянная и внешняя система очередей.Если вы выберете внешнюю систему очередей (которая также может быть избыточной для предотвращения перебоев), вы можете просто отправить все постоянные запросы во внешнюю очередь.Тогда у вас есть только один механизм / рабочий процесс, который вам нужно поддерживать.