Domanda

Al momento sto insegnando me Drools Expert / flusso così come GWT. Voglio usare Drools flusso come motore evento / bus di comando e regola di business per raggiungere accoppiamento lasco tra le diverse parti dell'applicazione.

Finora ho ottenuto sia di esperti e di flusso di lavoro dai miei casi di test, ma ho difficoltà a capire come meglio implementare flussi all'interno di un contenitore web.

Devo mettere tutta l'impalcatura in un EJB Stateless Session e lasciare che ogni richiesta di impostare tutto da zero e quindi eseguire i flussi / regole? Questo mi sembra uno spreco di risorse per me. Posso invece memorizzare una sessione di conoscenze unico e di condivisione che le sessioni tra le richieste web, accedendo contemporaneamente, sarebbe quella scala scenario Ed è thread-safe (la mia congettura è no)? Sta mettendo in comune le sessioni di conoscenza una buona idea?

Quello che sto chiedendo è fondamentalmente se ci sono delle migliori pratiche per quanto sopra? La documentazione e gli esempi, mentre altrimenti abbastanza buono, non sono chiare su questi punti particolari.

ho fatto qualcosa di lettura su Drools griglia, non so se questo avrebbe risolto il mio problema e che sembra essere in fase di sviluppo. Se le mie domande non sono chiare, si prega di dirlo.

BR Magnus

È stato utile?

Soluzione

Un KnowledgeBase è thread-safe e peso (non è poco per creare), in modo da 'll probabilmente vuole mantenere che in un ambito di applicazione.

Per il momento, la maggior parte delle persone tendono ad utilizzare un'architettura senza stato e creare una StatelessKnowlegdeSession (filo non sicuro ed economico per creare) per ogni richiesta web, ad esempio in una session bean senza stato (o una cucitura / fagioli CDI o di un fagiolo di primavera) . Tuttavia, se avete il potere di stateful EJB di, può essere gratificante per mantenere l'uso uno StafefulKnowlegdeSession a gestire tutte le richieste della stessa conversazione.

Non sono sicuro se StatefulKnowlegdeSession è thread-safe (non la penso così), così ho fatto un problema: https://issues.jboss.org/browse/JBRULES-2842

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top