How to use the distributed lock provided by Curator
This article focuses on "how to use the distributed locks provided by Curator". Interested friends may wish to take a look. The method introduced in this paper is simple, fast and practical. Let's let the editor learn how to use the distributed locks provided by Curator.
The distributed locking usage provided by Curator is simple:
Package curator.lock;import org.apache.curator.RetryPolicy;import org.apache.curator.framework.CuratorFramework;import org.apache.curator.framework.CuratorFrameworkFactory;import org.apache.curator.framework.recipes.locks.InterProcessMutex;import org.apache.curator.retry.ExponentialBackoffRetry;public class InterProcessMutexDemo {public static void main (String [] args) {RetryPolicy retryPolicy = new ExponentialBackoffRetry (1000, 3) Final CuratorFramework client = CuratorFrameworkFactory.builder (). ConnectString ("127.0.0.1 lock 2181"). SessionTimeoutMs (5000) .connectionTimeoutMs (10000) .retryPolicy (retryPolicy) .namespace ("text"). Build (); client.start (); InterProcessMutex lock = new InterProcessMutex (client, "/ lock"); try {lock.acquire () System.err.println ("generate order number"); Thread.currentThread (). Sleep (5000L);} catch (Exception e) {} finally {try {lock.release () } catch (Exception e) {e.printStackTrace ();}} try {lock.acquire (); System.err.println ("generate order number") Thread.currentThread () .sleep (Long.MAX_VALUE);} catch (Exception e) {} finally {try {lock.release ();} catch (Exception e) {e.printStackTrace () At this point, I believe you have a better understanding of "how to use the distributed locks provided by Curator". You might as well do it in practice. Here is the website, more related content can enter the relevant channels to inquire, follow us, continue to learn!