Об использовании сериализатора Джексона в аксоне для преобразования и, таким образом, сохранения события в MongoDB

Я использую axon 3.1.1, сохраняя события в mongodb,
я могу сохранить его в формате XML.
но при преобразовании его в формат JSON с помощью сериализатора Джексона я не могу получить, что такое Storage стратегия.

то, что я делаю, находится здесь
@Bean
public EventStorageEngine mongoEventStorageEngine () {
return new
MongoEventStorageEngine (axonJsonSerializer (), NoOpEventUpcaster.INSTANCE, aggregateMongoTemplate (), [?? ]);
}

Также, пожалуйста, поделитесь, что, если мне не нужна какая-либо стратегия хранения и я оставлю это значение по умолчанию

Заранее спасибо


person A S    schedule 17.01.2018    source источник


Ответы (1)


Стратегия хранения определяет, как вы хотите, чтобы события сохранялись в MongoDB. Есть 2 варианта: DocumentPerEventStorageStrategy, где каждое событие становится одним документом mongo, или DocumentPerCommitStorageStrategy, где все события внутри фиксации хранятся как один документ mongo.

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

По умолчанию используется DocumentPerEventStorageStrategy.

person Marc Gathier    schedule 17.01.2018
comment
Спасибо, Марк, я реализовал DocumentPerEventStorageStrategy, и это сработало. - person A S; 17.01.2018