Question

Je suis actuellement enseigner moi-même Drools Expert / débit, ainsi que GWT. Je veux utiliser Drools flux comme un événement / bus de commande et le moteur de règles métier pour réaliser un couplage lâche entre les différentes parties de l'application.

Jusqu'à présent, je suis devenu expert et flux de travail de mes cas de test, mais j'ai du mal à comprendre comment mieux mettre en œuvre dans un flux conteneur Web.

Dois-je mettre tout l'échafaudage en une session Stateless EJB et que chaque demande tout mettre en place à partir de zéro puis exécutez les flux / règles? Cela semble être un gaspillage de ressources pour moi. Puis-je stocker au lieu d'une seule session de connaissances et de partager que les sessions entre les requêtes Web, y accéder simultanément, serait que l'échelle des scénarios et est-ce thread-safe (je suppose pas)? Est la mise en commun des séances de connaissances une bonne idée?

Qu'est-ce que je demande est, fondamentalement, s'il y a des meilleures pratiques pour ce qui précède? La documentation et les exemples, tout autre assez bon, ne sont pas claires sur ces points particuliers.

Je l'ai fait quelque chose au sujet de lecture Drools Grille, ne sais pas si cela résoudrait mon problème et qui semble être en cours de développement. Si mes questions ne sont pas claires, s'il vous plaît dites-le.

BR Magnus

Était-ce utile?

La solution

Une base de connaissances est sûr du fil et du poids lourd (ce n'est pas pas cher pour créer), de sorte que vous aurez envie sans doute garder que dans un champ d'application.

Pour l'instant, la plupart des gens ont tendance à utiliser une architecture sans état et créer un StatelessKnowlegdeSession (fil dangereux et pas cher pour créer) pour chaque demande Web, par exemple dans un bean session sans état (ou un grain de couture / CDI ou un grain de printemps) . Toutefois, si vous avez le pouvoir de stateful EJB, il peut être intéressant de continuer à utiliser un StafefulKnowlegdeSession pour traiter toutes les demandes dans la même conversation.

Je ne sais pas si StatefulKnowlegdeSession est sûr de fil (ne pense pas), donc j'ai fait une question: https://issues.jboss.org/browse/JBRULES-2842

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top