You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@thrift.apache.org by "David Reiss (JIRA)" <ji...@apache.org> on 2010/07/01 20:02:01 UTC

[jira] Created: (THRIFT-812) Demo of Thrift over ZeroMQ

Demo of Thrift over ZeroMQ
--------------------------

                 Key: THRIFT-812
                 URL: https://issues.apache.org/jira/browse/THRIFT-812
             Project: Thrift
          Issue Type: New Feature
          Components: Library (C++), Library (Python)
            Reporter: David Reiss
            Priority: Minor
         Attachments: v1-0001-THRIFT-812.-contrib-Add-a-demo-of-using-Thrift-over-.patch

I played around with ZeroMQ a bit this weekend.  I thought it might be informative to write some glue code to run Thrift requests with ZeroMQ as the transport, so here it is.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (THRIFT-812) Demo of Thrift over ZeroMQ

Posted by "David Reiss (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/THRIFT-812?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

David Reiss updated THRIFT-812:
-------------------------------

    Attachment: v2-0001-THRIFT-812.-contrib-Add-a-demo-of-using-Thrift-over-.patch

> Demo of Thrift over ZeroMQ
> --------------------------
>
>                 Key: THRIFT-812
>                 URL: https://issues.apache.org/jira/browse/THRIFT-812
>             Project: Thrift
>          Issue Type: New Feature
>          Components: Library (C++), Library (Python)
>            Reporter: David Reiss
>            Priority: Minor
>         Attachments: v1-0001-THRIFT-812.-contrib-Add-a-demo-of-using-Thrift-over-.patch, v2-0001-THRIFT-812.-contrib-Add-a-demo-of-using-Thrift-over-.patch
>
>
> I played around with ZeroMQ a bit this weekend.  I thought it might be informative to write some glue code to run Thrift requests with ZeroMQ as the transport, so here it is.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (THRIFT-812) Demo of Thrift over ZeroMQ

Posted by "Roger Meier (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/THRIFT-812?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12904517#action_12904517 ] 

Roger Meier commented on THRIFT-812:
------------------------------------

Yes, please commit this. It does not matter to me if it is within main tree or contrib.

One missing thing was http://wiki.apache.org/thrift/ThriftIntegrationConventions , this makes it now clear how to handle zeromq in general.

On question I had in mind was how the handle zeromq for all the different languages supported by Thrift.
Nearly every language supported  by Thrift has its own zeromq library.


> Demo of Thrift over ZeroMQ
> --------------------------
>
>                 Key: THRIFT-812
>                 URL: https://issues.apache.org/jira/browse/THRIFT-812
>             Project: Thrift
>          Issue Type: New Feature
>          Components: C++ - Library, Python - Library
>            Reporter: David Reiss
>            Priority: Minor
>         Attachments: THRIFT-812_with_multicast_example.patch, v1-0001-THRIFT-812.-contrib-Add-a-demo-of-using-Thrift-over-.patch, v2-0001-THRIFT-812.-contrib-Add-a-demo-of-using-Thrift-over-.patch
>
>
> I played around with ZeroMQ a bit this weekend.  I thought it might be informative to write some glue code to run Thrift requests with ZeroMQ as the transport, so here it is.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (THRIFT-812) Demo of Thrift over ZeroMQ

Posted by "David Reiss (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/THRIFT-812?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12904372#action_12904372 ] 

David Reiss commented on THRIFT-812:
------------------------------------

> I do not have a clear view how it could or should be integrated into Thrift.
You mean in terms of what the code should look like or where we should put it?  I think the code should look more-or-less like this.  I think putting it in contrib, or in the main tree, or in a separate library are fine.  I can commit this to contrib now if you want.

> Demo of Thrift over ZeroMQ
> --------------------------
>
>                 Key: THRIFT-812
>                 URL: https://issues.apache.org/jira/browse/THRIFT-812
>             Project: Thrift
>          Issue Type: New Feature
>          Components: C++ - Library, Python - Library
>            Reporter: David Reiss
>            Priority: Minor
>         Attachments: THRIFT-812_with_multicast_example.patch, v1-0001-THRIFT-812.-contrib-Add-a-demo-of-using-Thrift-over-.patch, v2-0001-THRIFT-812.-contrib-Add-a-demo-of-using-Thrift-over-.patch
>
>
> I played around with ZeroMQ a bit this weekend.  I thought it might be informative to write some glue code to run Thrift requests with ZeroMQ as the transport, so here it is.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (THRIFT-812) Demo of Thrift over ZeroMQ

Posted by "Roger Meier (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/THRIFT-812?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Roger Meier updated THRIFT-812:
-------------------------------

    Attachment: THRIFT-812_with_multicast_example.patch

I did small modifications on David's patch to support multicast via ZMQ_PUB and ZMQ_SUB sockets for C++:
* add a test-sender.cpp and test-receiver.cpp
* TZmqClient.h/TZmqServer.h other behavior for PUB/SUB Sockets
* Makefile new files added

(!) only the oneway function from the provided sample has been tested, this is just a proof of concept

It uses _Encapsulated PGM_ see [zmq_pgm|http://api.zeromq.org/zmq_pgm.html] or [rfc3208| http://tools.ietf.org/rfcmarkup?doc=3208].
_"PGM is a reliable and scalable multicast protocol that enables receivers to detect loss, request retransmission of lost data, or notify an application of unrecoverable loss."_

0MQ is a very nice framework, but currently I do not have a clear view how it could or should be integrated into Thrift.
However placing that into contrib might be a good starting point to give it a try or think about...


> Demo of Thrift over ZeroMQ
> --------------------------
>
>                 Key: THRIFT-812
>                 URL: https://issues.apache.org/jira/browse/THRIFT-812
>             Project: Thrift
>          Issue Type: New Feature
>          Components: C++ - Library, Python - Library
>            Reporter: David Reiss
>            Priority: Minor
>         Attachments: THRIFT-812_with_multicast_example.patch, v1-0001-THRIFT-812.-contrib-Add-a-demo-of-using-Thrift-over-.patch, v2-0001-THRIFT-812.-contrib-Add-a-demo-of-using-Thrift-over-.patch
>
>
> I played around with ZeroMQ a bit this weekend.  I thought it might be informative to write some glue code to run Thrift requests with ZeroMQ as the transport, so here it is.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Resolved: (THRIFT-812) Demo of Thrift over ZeroMQ

Posted by "David Reiss (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/THRIFT-812?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

David Reiss resolved THRIFT-812.
--------------------------------

    Fix Version/s: 0.5
       Resolution: Fixed

> Demo of Thrift over ZeroMQ
> --------------------------
>
>                 Key: THRIFT-812
>                 URL: https://issues.apache.org/jira/browse/THRIFT-812
>             Project: Thrift
>          Issue Type: New Feature
>          Components: C++ - Library, Python - Library
>            Reporter: David Reiss
>            Priority: Minor
>             Fix For: 0.5
>
>         Attachments: THRIFT-812_with_multicast_example.patch, v1-0001-THRIFT-812.-contrib-Add-a-demo-of-using-Thrift-over-.patch, v2-0001-THRIFT-812.-contrib-Add-a-demo-of-using-Thrift-over-.patch
>
>
> I played around with ZeroMQ a bit this weekend.  I thought it might be informative to write some glue code to run Thrift requests with ZeroMQ as the transport, so here it is.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (THRIFT-812) Demo of Thrift over ZeroMQ

Posted by "David Reiss (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/THRIFT-812?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

David Reiss updated THRIFT-812:
-------------------------------

    Attachment: v1-0001-THRIFT-812.-contrib-Add-a-demo-of-using-Thrift-over-.patch

> Demo of Thrift over ZeroMQ
> --------------------------
>
>                 Key: THRIFT-812
>                 URL: https://issues.apache.org/jira/browse/THRIFT-812
>             Project: Thrift
>          Issue Type: New Feature
>          Components: Library (C++), Library (Python)
>            Reporter: David Reiss
>            Priority: Minor
>         Attachments: v1-0001-THRIFT-812.-contrib-Add-a-demo-of-using-Thrift-over-.patch
>
>
> I played around with ZeroMQ a bit this weekend.  I thought it might be informative to write some glue code to run Thrift requests with ZeroMQ as the transport, so here it is.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.