[ https://issues.apache.org/jira/browse/CAMEL-4397?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13109460#comment-13109460 ]
Sergey Zhemzhitsky edited comment on CAMEL-4397 at 9/21/11 1:29 PM: -------------------------------------------------------------------- Hi guys, What do you think about org.apache.camel.spi.RoutePolicy implementation that uses hazelcast to support distributed locking/unloking? Such a route policy will force the route to run only on a single node in the cluster. Moreover there can be two route policies: # the first one will create a distributed lock on every incoming exchange and will release the lock when exchange processing completes. This policy will allow to process exchange only on a single node of the cluster at a given time. When exchange processing completes the second node in the cluster will be able to obtain a lock. # the second route policy will create a distributed lock on route startup, and will release the lock on route shutdown, so the route will run only on a single node in the cluster all the time. was (Author: szhemzhitsky): Hi guys, What do you think about org.apache.camel.spi.RoutePolicy implementation that uses hazelcast to support distributed locking/unloking? Such a route policy will force the route to run only on a single node in the cluster. > add route support for Hazelcast distributed locking/unlocking > ------------------------------------------------------------- > > Key: CAMEL-4397 > URL: https://issues.apache.org/jira/browse/CAMEL-4397 > Project: Camel > Issue Type: Improvement > Components: camel-hazelcast > Reporter: Ben O'Day > Assignee: Ben O'Day > Priority: Minor > Fix For: 2.9.0 > > Attachments: CAMEL-4397.patch > > > add support for Hazelcast distributed locking/unlocking APIs in a route...see > http://www.hazelcast.com/documentation.jsp#Lock > something like this... > {code} > from("seda:lockTest") > .doTry() > .setHeader(HazelcastConstants.LOCK_OBJECT, simple("ID-${header.id}")) > .to("hazelcast:lock") > .setBody(simple("processed[${body}]")) > .to("mock:mock") > .doFinally() > .to("hazelcast:unlock"); > {code} -- This message is automatically generated by JIRA. For more information on JIRA, see: http://www.atlassian.com/software/jira