{"id":29037,"date":"2015-10-27T15:08:27","date_gmt":"2015-10-27T09:38:27","guid":{"rendered":"http:\/\/www.tothenew.com\/blog\/?p=29037"},"modified":"2016-01-19T13:29:10","modified_gmt":"2016-01-19T07:59:10","slug":"curator-framework-for-apache-zookeeper","status":"publish","type":"post","link":"https:\/\/www.tothenew.com\/blog\/curator-framework-for-apache-zookeeper\/","title":{"rendered":"Curator Framework for Apache ZooKeeper"},"content":{"rendered":"<h3>Objective<\/h3>\n<p>My purpose to write this blog post is just to briefly introduce you to <a href=\"http:\/\/curator.apache.org\/\">Apache Curator<\/a> framework, esp. in case you have been using <a href=\"http:\/\/zookeeper.apache.org\/\">Apache ZooKeeper<\/a> Java API but never tried Curator framework. In such case, I strongly recommend you to try Curator.<\/p>\n<h4>Difficulties while using ZooKeeper API<\/h4>\n<ul>\n<li>Handling the client\/server connections.<\/li>\n<li>Writing so many lines of code to get a basic functionality (a.k.a. Recipe).<\/li>\n<li>Handling \u2018recoverable\u2019 errors<\/li>\n<\/ul>\n<p><\/p>\n<h4>Simple analogies to understand the difference between Zookeeper and Curator<\/h4>\n<p>As Patric Hunt (Zookeeper committer) said &#8211; \u201cGuava is to Java what Curator is to Zookeeper\u201d.<br \/>\nOr we can say &#8211; \u201cGroovy is to Java what Curator is to Zookeeper\u201d.<\/p>\n<h4>Curator\u2019s main benefits are:<\/h4>\n<ul>\n<li>A simplified API<\/li>\n<li>Automatic ZooKeeper connection management with retries<\/li>\n<li>Mature implementations of ZooKeeper recipes<\/li>\n<\/ul>\n<p>Not only this, it\u2019s so simple to create a new ZooKeeper recipe using Curator framework.<\/p>\n<p><em> Here&#8217;s another interesting blog in praise of Curator  &#8211;<br \/>\n<a href=\"http:\/\/blog.cloudera.com\/blog\/2013\/05\/zookeeper-made-simpler\/\"> Apache ZooKeeper Made Simpler with Curator<\/a><br \/>\n<\/em><\/p>\n<p>Thank you <a href=\"https:\/\/www.netflix.com\">Netflix<\/a> for writing this framework! \ud83d\ude42<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Objective My purpose to write this blog post is just to briefly introduce you to Apache Curator framework, esp. in case you have been using Apache ZooKeeper Java API but never tried Curator framework. In such case, I strongly recommend you to try Curator. Difficulties while using ZooKeeper API Handling the client\/server connections. Writing so [&hellip;]<\/p>\n","protected":false},"author":606,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"iawp_total_views":21},"categories":[1395,446],"tags":[2664,2663],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/www.tothenew.com\/blog\/wp-json\/wp\/v2\/posts\/29037"}],"collection":[{"href":"https:\/\/www.tothenew.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.tothenew.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.tothenew.com\/blog\/wp-json\/wp\/v2\/users\/606"}],"replies":[{"embeddable":true,"href":"https:\/\/www.tothenew.com\/blog\/wp-json\/wp\/v2\/comments?post=29037"}],"version-history":[{"count":0,"href":"https:\/\/www.tothenew.com\/blog\/wp-json\/wp\/v2\/posts\/29037\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.tothenew.com\/blog\/wp-json\/wp\/v2\/media?parent=29037"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.tothenew.com\/blog\/wp-json\/wp\/v2\/categories?post=29037"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.tothenew.com\/blog\/wp-json\/wp\/v2\/tags?post=29037"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}