Хорошо, это не полностью испеченная идея.Но, поскольку никто другой не предоставил ничего, вот с чего я бы начал.
1) Посмотрим, сможете ли вы переместить весь поток на одну страницу.Я большой сторонник меньшего количества страниц, это лучший подход.Это совсем не уменьшает сложность приложения, но пользователь обычно находит интерфейс более интуитивно понятным.Один из самых простых способов добиться этого - использовать плагин json и множество вызовов ajax для ваших служб json.
2) Если вам нужно переходить между страницами (или просто думать, что реализация # 1 слишком сложна на стороне клиента), я бы обратился к тегу s: token.Самая первая страница для запуска потока будет использовать этот тег, который будет создавать уникальное значение при каждом вызове.Вы будете хранить карту в своем сеансе модельных объектов.Действие нужно будет снабдить моделью, посмотрев ее из сессии.
Есть пара проблем с # 2.Один, как вы удерживаете сеанс от получения слишком большого количества доменных объектов?а) Ну, это может и не иметь значения, если сеанс установлен на шесть часов, вы можете быть уверены, что за ночь они прояснятся.б) предоставил интерфейс самоуправления, который может получать / устанавливать / перечислять объекты в сеансе.Сначала это может быть то, о чем вы подумали, но это позволит работнику выполнить определенное количество, а затем остановиться и поработать над другим.Если единица работы имеет какое-то значимое имя (номер счета или что-то еще), это может быть весьма полезно
Немного сложнее было бы перенести объекты модели из сеанса на уровень обслуживания.В какой момент при вставке вы установите время вставки.Вероятно, вам понадобится менеджер для хранения каждого типа объекта модели, и у каждого менеджера будет поток демона, который будет периодически сканировать карту объектов домена и очищать объекты с истекшим сроком действия.
Вы можете выяснить более сложную систему, запустив поток с помощью токена, а затем используя другой токен на каждой странице.«flowId» и «currentPageId» соответственно, тогда вы можете построить график допустимых переходов.
Имейте в виду, что в этот момент весенний поток начинает выглядеть довольно хорошо.