Хранение сообщений о событиях в таблице SQL-Server

У меня есть веб-API, который создает заказ на покупку. Как только этот заказ на покупку создан, я должен подтвердить создание другой сторонней веб-службы через вызов API этой службы.

В момент успешного создания заказа я хочу сохранить - события / сообщения - для вызова API 3-ей части в таблице сервера SQL. Я склонен хранить их в STOMP/STOMP-подобном формате.

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

Как наиболее эффективно хранить эти события в базе данных?

ПРИМЕЧАНИЕ. Пока я не собираюсь использовать настоящую очередь сообщений. И я не хочу, чтобы синхронные события создавались для вызова стороннего API.

1 ответ

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

Другие вопросы по тегам