Concurrency

News on Prova rewrite

Prova rewrite is progressing further with partitioned reactions and ESB messaging re-implementation. The updated Mule Prova Agents project now has all previous tests working against new Prova. Apart from small differences in Prova syntax, the most significant difference for ESB messaging is that Prova agents send and receive ProvaListImpl objects instead of now obsolete RMessage. Check it out here: https://mandarax.svn.sourceforge.net/svnroot/mandarax/mule-prova-agents2.... All tests beginning with the word Prova (for example, ProvaPetriDeferredChoiceTest) are using the Prova rewrite code.

Mule Prova+Drools Agents updated to Mule 2.1.2

I have updated the Mule Prova Agents project at https://mandarax.svn.sourceforge.net/svnroot/mandarax/mule-prova-agents2... and all tests run fine now. The project uses the latest build of Prova, Mule 2.1.2 and Drools 5.0.0.M5.

There are at least three ways Prova or Drools could be brought into the Mule world:

a) Mule transports,
b) Mule agents,
c) Mule components.

Big cleanup: concurrency and messaging

Concurrency and messaging and rules in combination is a fairly grey area and the old Prova attempted to propose a solution. The new redesign should feel more consistent and useful. All details will be on http://prova.ws/confluence site but here is a short outline. Prova agents execute protocols and send and receive messages asynchronously.

More messaging updates: control messages and conversations thread affinity

More updates to messaging in the "new" Prova.

1. Added the spawn predicate that runs Java calls as tasks on the task thread pool. The result is shipped back as a message.
2. Added rcvMult reactions that are kept after a matching message arrives. This is comparable with the "every" construct in the Esper event processing language.
3. Any conversations with conversation XID are now always pinned to the same thread so that message ordering is preserved in any given conversation at all times.

Syndicate content