Является ли целесообразным использование Spring Statemachine для отслеживания состояния множества записей? - PullRequest
0 голосов
/ 06 декабря 2018

Я совершенно новичок в проекте spring-statemachine и пытаюсь понять, можно ли использовать этот проект для управления жизненным циклом экземпляров некоторого класса, будь то обычный класс или какая-то сущность JPA.Я видел несколько вопросов на эту тему, но не получил ответа.

IIUC, statemachine в этом проекте с состоянием;в смысле, это машина состояний, которая хранит состояние, а не какой-то внешний контекст, который позволял бы делиться правилами состояний машины со многими сущностями.Таким образом, чтобы управлять состоянием этого автомата состояний, мы должны создать один автомат состояний на каждый экземпляр, которым управляет его состояние.Это так?Или есть способ, как объявить состояние машины, а затем спросить: «текущее состояние, получается даже, что такое целевое состояние (пожалуйста, обновите контекст)» *

Но сказать то, что было упомянуто выше, невозможно, чтоэто, вероятно, не так, если мы рассмотрим переходы на основе времени ожидания.Хорошо, скажем, некоторые события поступают в систему, и мы отслеживаем состояние, скажем, десятков миллионов записей.Мы создали бы с помощью фабрики состояний машины состояний машины для каждого экземпляра, если у нас его еще нет, и каким-то образом их объединяем (скажем, это какая-то хэш-карта, но вы можете посоветовать лучшее решение, если вы это знаете), и как только мы закончим сПо данной записи мы будем снимать состояние машины.Вопрос здесь: это хорошая идея использовать этот проект, как описано?Какова стоимость одной машины состояний, то есть если я создам миллионы экземпляров одной машины состояний, будет ли это проблемой?

... Или вы можете порекомендовать лучший способ использования этого проекта для отслеживания состояния этогомножество экземпляров, и быть в состоянии ответить на такие вопросы, как: «какие объекты находятся в состоянии X?»

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...