Слизь с состоянием сеанса за запрос

Мы пытаемся использовать Drool в качестве службы обработки правил. То, что мы сделали до сих пор, перечислено ниже

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

Поэтому мы пытаемся использовать сеанс с сохранением состояния для каждого запроса. Это означает, что сеанс должен быть ликвидирован, как только закончится запрос. Также параллельный запрос не должен мешать друг другу, даже если имя сеанса одинаковое

Мы узнали о конфигурации стратегии выполнения контейнера (Рабочая среда> Развертывание> {любой контейнер} > Конфигурация процесса> Стратегия выполнения)

Но даже после настройки стратегии контейнера на запрос, она по-прежнему ведет себя так же, как синглтон (сеанс не удаляется после каждого запроса)

Немного места, где мы читаем это, стратегия выполнения, реализованная только в jBPM

Способ отправки запроса на сервер KIE показан ниже.

 Request: POST {HOST}/kie-server/services/rest/server/containers/instances/TestRequest_1.0.4 
 {
   "lookup": "ab-session", //stateful session
   "commands": [
     {
       "insert": {
         "out-identifier": "125",
         "object": {
           "com.myteam.testrequest.Product": {
            "id": "123",
            "name": "Hoo Hoo",
            "count": 0
           }
         },
         "return-object": "true"
       }
     },
     {
       "insert": {
         "out-identifier": "126",
         "object": {
           "com.myteam.testrequest.Product": {
            "id": "123",
            "name": "Hoo Hoo",
            "count": 0
           }
         },
         "return-object": "true"
       }
     },
     {"fire-all-rules": "hf2"}
   ]
  }

Нам нужна помощь в достижении этого требования. Также, пожалуйста, помогите понять, если мы сделали что-то не так

0 ответов

В kmodule.xml вы можете попытаться добавить область "прототип", потому что по умолчанию "singleton":

<ksession name="SessionName" type="stateful" default="false" clockType="realtime" scope="prototype"/>
Другие вопросы по тегам