Re: java spaces and zookeeper
Guy Korland <[email protected]> Mon, 12 Jan 2009 00:18:46 +0200
| Newsgroups | gmane.comp.java.sun.jini |
|---|---|
| Message-ID | <[email protected]> |
This is a multi-part message in MIME format. ------_=_NextPart_001_01C9743A.8FAF0E29 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Hi Bryan, =20 GigaSpaces (http://www.gigaspaces.com/wiki) provides a distributed implementation of JavaSpaces. =20 As so it provides means for all the facilities you mentioned including distributed lock (based on javaspaces transaction's model), distributed queue (based on javaspaces notify model + fifo extension) and primary election mechanism (based on jini lookup service). =20 GigaSpaces provides many more facilities to allowing development and deployment of distributed application almost as easy as development of stand alone one. =20 [1] http://www.gigaspaces.com/wiki/display/XAP66/Space+Locking+and+Blocking http://www.gigaspaces.com/wiki/display/XAP66/Pessimistic+Locking <http://www.gigaspaces.com/wiki/display/XAP66/Space+Locking+and+Blocking %20http:/www.gigaspaces.com/wiki/display/XAP66/Pessimistic+Locking> =20 [2] http://www.gigaspaces.com/wiki/display/XAP66/Mule+Queue+Provider http://www.gigaspaces.com/wiki/display/XAP66/Browsing+JMS+Queues=20 [3] http://www.gigaspaces.com/wiki/display/XAP66/Terminology+-+Data+Grid+Top ologies=20 =20 Guy =20 ________________________________ From: Bryan Thompson [mailto:[email protected]]=20 Sent: Sunday, January 11, 2009 2:47 PM To: [email protected] Subject: java spaces and zookeeper =20 Hello, =20 I was wondering if anyone has considered whether java spaces can be used to build the same kinds of distributed lock, distributed queue, and master election control structures that are the primary focus of zookeeper[1,2,3]. Zookeeper gives a guarentee of the ordered of events and provides some basic mechanisms for creating nodes within its "space" that are linked to the life span of the client which created them and which are assigned in a sequence that may be used to build up a variety of queue like structures, including distributed locks and master elections.=20 =20 So, my question is, are there patterns for creating the same kinds of control structures using java spaces? Thanks, =20 -bryan =20 [1] http://hadoop.apache.org/zookeeper/docs/r3.0.1/ [2] http://hadoop.apache.org/zookeeper/docs/r3.0.1/recipes.html [3] http://hadoop.apache.org/zookeeper/docs/r3.0.1/zookeeperProgrammers.html ------------------------------------------------------------------------ -- Getting Started: http://www.jini.org/wiki/Category:Getting_Started Community Web Site: http://jini.org jini-users Archive: http://archives.java.sun.com/archives/jini-users.html Unsubscribing: email "signoff JINI-USERS" to [email protected] -------------------------------------------------------------------------- Getting Started: http://www.jini.org/wiki/Category:Getting_Started Community Web Site: http://jini.org jini-users Archive: http://archives.java.sun.com/archives/jini-users.html Unsubscribing: email "signoff JINI-USERS" to [email protected] ------_=_NextPart_001_01C9743A.8FAF0E29 Content-Type: text/html; charset="us-ascii" Content-Transfer-Encoding: quoted-printable <html xmlns:v=3D"urn:schemas-microsoft-com:vml" = xmlns:o=3D"urn:schemas-microsoft-com:office:office" = xmlns:w=3D"urn:schemas-microsoft-com:office:word" = xmlns:st1=3D"urn:schemas-microsoft-com:office:smarttags" = xmlns=3D"http://www.w3.org/TR/REC-html40"> <head> <meta http-equiv=3DContent-Type content=3D"text/html; = charset=3Dus-ascii"> <meta name=3DGenerator content=3D"Microsoft Word 11 (filtered medium)"> <!--[if !mso]> <style> v\:* {behavior:url(#default#VML);} o\:* {behavior:url(#default#VML);} w\:* {behavior:url(#default#VML);} .shape {behavior:url(#default#VML);} </style> <![endif]--><o:SmartTagType namespaceuri=3D"urn:schemas-microsoft-com:office:smarttags" = name=3D"place"/> <o:SmartTagType = namespaceuri=3D"urn:schemas-microsoft-com:office:smarttags" name=3D"City"/> <!--[if !mso]> <style> st1\:*{behavior:url(#default#ieooui) } </style> <![endif]--> <style> <!-- /* Font Definitions */ @font-face {font-family:Tahoma; panose-1:2 11 6 4 3 5 4 4 2 4;} /* Style Definitions */ p.MsoNormal, li.MsoNormal, div.MsoNormal {margin:0in; margin-bottom:.0001pt; font-size:12.0pt; font-family:"Times New Roman";} a:link, span.MsoHyperlink {color:blue; text-decoration:underline;} a:visited, span.MsoHyperlinkFollowed {color:blue; text-decoration:underline;} span.EmailStyle17 {mso-style-type:personal; font-family:Arial; color:navy;} span.EmailStyle18 {mso-style-type:personal-reply; font-family:Arial; color:navy;} @page Section1 {size:595.3pt 841.9pt; margin:1.0in 1.25in 1.0in 1.25in;} div.Section1 {page:Section1;} --> </style> </head> <body lang=3DEN-US link=3Dblue vlink=3Dblue> <div class=3DSection1 dir=3DRTL> <p class=3DMsoNormal dir=3DLTR><font size=3D2 color=3Dnavy = face=3DArial><span style=3D'font-size:10.0pt;font-family:Arial;color:navy'>Hi = Bryan,<o:p></o:p></span></font></p> <p class=3DMsoNormal dir=3DLTR><font size=3D2 color=3Dnavy = face=3DArial><span style=3D'font-size:10.0pt;font-family:Arial;color:navy'><o:p> </o:p>= </span></font></p> <p class=3DMsoNormal dir=3DLTR><font size=3D2 color=3Dnavy = face=3DArial><span style=3D'font-size:10.0pt;font-family:Arial;color:navy'>GigaSpaces (<a href=3D"http://www.gigaspaces.com/wiki">http://www.gigaspaces.com/wiki</a= >) provides a distributed implementation of = JavaSpaces.<o:p></o:p></span></font></p> <p class=3DMsoNormal dir=3DLTR><font size=3D2 color=3Dnavy = face=3DArial><span style=3D'font-size:10.0pt;font-family:Arial;color:navy'><o:p> </o:p>= </span></font></p> <p class=3DMsoNormal dir=3DLTR><font size=3D2 color=3Dnavy = face=3DArial><span style=3D'font-size:10.0pt;font-family:Arial;color:navy'>As so it = provides means for all the facilities you mentioned including distributed lock (based = on javaspaces transaction's model), distributed queue (based on javaspaces = notify model + fifo extension) and primary election mechanism (based on jini = lookup service).<o:p></o:p></span></font></p> <p class=3DMsoNormal dir=3DLTR><font size=3D2 color=3Dnavy = face=3DArial><span style=3D'font-size:10.0pt;font-family:Arial;color:navy'><o:p> </o:p>= </span></font></p> <p class=3DMsoNormal dir=3DLTR><font size=3D2 color=3Dnavy = face=3DArial><span style=3D'font-size:10.0pt;font-family:Arial;color:navy'>GigaSpaces = provides many more facilities to allowing development and deployment of distributed application almost as easy as development of stand alone = one.<o:p></o:p></span></font></p> <p class=3DMsoNormal dir=3DLTR><font size=3D2 color=3Dnavy = face=3DArial><span style=3D'font-size:10.0pt;font-family:Arial;color:navy'><o:p> </o:p>= </span></font></p> <p class=3DMsoNormal dir=3DLTR><font size=3D2 color=3Dnavy = face=3DArial><span style=3D'font-size:10.0pt;font-family:Arial;color:navy'>[1] = </span></font><font color=3Dnavy><span style=3D'color:navy'><a href=3D"http://www.gigaspaces.com/wiki/display/XAP66/Space+Locking+and+Bl= ocking%20http:/www.gigaspaces.com/wiki/display/XAP66/Pessimistic+Locking"= >http://www.gigaspaces.com/wiki/display/XAP66/Space+Locking+and+Blocking http://www.gigaspaces.com/wiki/display/XAP66/Pessimistic+Locking</a></spa= n></font> <o:p></o:p></p> <p class=3DMsoNormal dir=3DLTR><font size=3D2 color=3Dnavy = face=3DArial><span style=3D'font-size:10.0pt;font-family:Arial;color:navy'>[2] <a href=3D"http://www.gigaspaces.com/wiki/display/XAP66/Mule+Queue+Provider"= >http://www.gigaspaces.com/wiki/display/XAP66/Mule+Queue+Provider</a> <a = href=3D"http://www.gigaspaces.com/wiki/display/XAP66/Browsing+JMS+Queues"= >http://www.gigaspaces.com/wiki/display/XAP66/Browsing+JMS+Queues</a> <o:p></o:p></span></font></p> <p class=3DMsoNormal dir=3DLTR><font size=3D2 color=3Dnavy = face=3DArial><span style=3D'font-size:10.0pt;font-family:Arial;color:navy'>[3] <a href=3D"http://www.gigaspaces.com/wiki/display/XAP66/Terminology+-+Data+G= rid+Topologies">http://www.gigaspaces.com/wiki/display/XAP66/Terminology+= -+Data+Grid+Topologies</a> <o:p></o:p></span></font></p> <p class=3DMsoNormal dir=3DLTR><font size=3D2 color=3Dnavy = face=3DArial><span style=3D'font-size:10.0pt;font-family:Arial;color:navy'><o:p> </o:p>= </span></font></p> <p class=3DMsoNormal dir=3DLTR><font size=3D2 color=3Dnavy = face=3DArial><span style=3D'font-size:10.0pt;font-family:Arial;color:navy'>Guy<o:p></o:p></s= pan></font></p> <p class=3DMsoNormal dir=3DLTR><font size=3D2 color=3Dnavy = face=3DArial><span style=3D'font-size:10.0pt;font-family:Arial;color:navy'><o:p> </o:p>= </span></font></p> <div> <div class=3DMsoNormal align=3Dcenter dir=3DLTR = style=3D'text-align:center'><font size=3D3 face=3D"Times New Roman"><span style=3D'font-size:12.0pt'> <hr size=3D3 width=3D"100%" align=3Dcenter tabindex=3D-1> </span></font></div> <p class=3DMsoNormal dir=3DLTR><b><font size=3D2 face=3DTahoma><span = style=3D'font-size: 10.0pt;font-family:Tahoma;font-weight:bold'>From:</span></font></b><font size=3D2 face=3DTahoma><span = style=3D'font-size:10.0pt;font-family:Tahoma'> Bryan Thompson [mailto:[email protected]] <br> <b><span style=3D'font-weight:bold'>Sent:</span></b> Sunday, January 11, = 2009 2:47 PM<br> <b><span style=3D'font-weight:bold'>To:</span></b> = [email protected]<br> <b><span style=3D'font-weight:bold'>Subject:</span></b> java spaces and = zookeeper</span></font><o:p></o:p></p> </div> <p class=3DMsoNormal dir=3DLTR><font size=3D3 face=3D"Times New = Roman"><span style=3D'font-size:12.0pt'><o:p> </o:p></span></font></p> <div> <p class=3DMsoNormal dir=3DLTR><font size=3D2 color=3Dblue = face=3DArial><span style=3D'font-size:10.0pt;font-family:Arial;color:blue'>Hello,</span></fo= nt><o:p></o:p></p> </div> <div> <p class=3DMsoNormal dir=3DLTR><font size=3D3 face=3D"Times New = Roman"><span style=3D'font-size:12.0pt'> <o:p></o:p></span></font></p> </div> <div> <p class=3DMsoNormal dir=3DLTR><font size=3D2 color=3Dblue = face=3DArial><span style=3D'font-size:10.0pt;font-family:Arial;color:blue'>I was wondering = if anyone has considered whether java spaces can be used to build the same kinds of distributed lock, distributed queue, and master election control structures that are the primary focus of zookeeper[1,2,3]. = Zookeeper gives a guarentee of the ordered of events and provides some basic = mechanisms for creating nodes within its "space" that are linked to the = life span of the client which created them and which are assigned in a = sequence that may be used to build up a variety of queue like structures, including distributed locks and master = elections. </span></font><o:p></o:p></p> </div> <div> <p class=3DMsoNormal dir=3DLTR><font size=3D3 face=3D"Times New = Roman"><span style=3D'font-size:12.0pt'> <o:p></o:p></span></font></p> </div> <div> <p class=3DMsoNormal dir=3DLTR><font size=3D2 color=3Dblue = face=3DArial><span style=3D'font-size:10.0pt;font-family:Arial;color:blue'>So, my question = is, are there patterns for creating the same kinds of control structures using = java spaces?</span></font><o:p></o:p></p> </div> <div> <p class=3DMsoNormal dir=3DLTR><font size=3D3 face=3D"Times New = Roman"><span style=3D'font-size:12.0pt'><br> </span></font><font size=3D2 color=3Dblue face=3DArial><span = style=3D'font-size:10.0pt; font-family:Arial;color:blue'>Thanks,</span></font><o:p></o:p></p> </div> <div> <p class=3DMsoNormal dir=3DLTR><font size=3D3 face=3D"Times New = Roman"><span style=3D'font-size:12.0pt'> <o:p></o:p></span></font></p> </div> <div> <p class=3DMsoNormal dir=3DLTR><font size=3D2 color=3Dblue = face=3DArial><span style=3D'font-size:10.0pt;font-family:Arial;color:blue'>-<st1:place = w:st=3D"on"><st1:City w:st=3D"on">bryan</st1:City></st1:place></span></font><o:p></o:p></p> </div> <div> <p class=3DMsoNormal dir=3DLTR><font size=3D3 face=3D"Times New = Roman"><span style=3D'font-size:12.0pt'> <o:p></o:p></span></font></p> </div> <div> <p class=3DMsoNormal dir=3DLTR><font size=3D2 color=3Dblue = face=3DArial><span style=3D'font-size:10.0pt;font-family:Arial;color:blue'>[1] <a href=3D"http://hadoop.apache.org/zookeeper/docs/r3.0.1/">http://hadoop.ap= ache.org/zookeeper/docs/r3.0.1/</a></span></font><o:p></o:p></p> </div> <div> <p class=3DMsoNormal dir=3DLTR><font size=3D2 color=3Dblue = face=3DArial><span style=3D'font-size:10.0pt;font-family:Arial;color:blue'>[2] <a href=3D"http://hadoop.apache.org/zookeeper/docs/r3.0.1/recipes.html">http= ://hadoop.apache.org/zookeeper/docs/r3.0.1/recipes.html</a></span></font>= <o:p></o:p></p> </div> <div> <p class=3DMsoNormal dir=3DLTR><font size=3D2 color=3Dblue = face=3DArial><span style=3D'font-size:10.0pt;font-family:Arial;color:blue'>[3] <a href=3D"http://hadoop.apache.org/zookeeper/docs/r3.0.1/zookeeperProgramme= rs.html">http://hadoop.apache.org/zookeeper/docs/r3.0.1/zookeeperProgramm= ers.html</a></span></font><o:p></o:p></p> </div> </div> </body> </html> -------------------------------------------------------------------------= - Getting Started: http://www.jini.org/wiki/Category:Getting_Started Community Web Site: http://jini.org jini-users Archive: = http://archives.java.sun.com/archives/jini-users.html Unsubscribing: email "signoff JINI-USERS" to [email protected] -------------------------------------------------------------------------- Getting Started: http://www.jini.org/wiki/Category:Getting_Started Community Web Site: http://jini.org jini-users Archive: http://archives.java.sun.com/archives/jini-users.html Unsubscribing: email "signoff JINI-USERS" to [email protected] ------_=_NextPart_001_01C9743A.8FAF0E29--