You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@thrift.apache.org by "André Aizim Kelmanson (JIRA)" <ji...@apache.org> on 2015/03/22 04:17:11 UTC

[jira] [Commented] (THRIFT-1125) Multiplexing support for the Ruby Library

    [ https://issues.apache.org/jira/browse/THRIFT-1125?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14374769#comment-14374769 ] 

André Aizim Kelmanson commented on THRIFT-1125:
-----------------------------------------------

I've implemented a fully functional non-intrusive multiplexer based on multiplexed.patch.

https://github.com/investtools/thrift-multiplexing

> Multiplexing support for the Ruby Library
> -----------------------------------------
>
>                 Key: THRIFT-1125
>                 URL: https://issues.apache.org/jira/browse/THRIFT-1125
>             Project: Thrift
>          Issue Type: Sub-task
>          Components: Ruby - Library
>    Affects Versions: 0.6
>            Reporter: Alex
>            Priority: Minor
>              Labels: multiplexing
>         Attachments: multiplexed.patch, multiplexing_support.diff
>
>
> Attached are two files which implement multiplexing support in the Ruby library. I do not consider these implementations complete, however they work well for my purposes.
> On the server side:
> mp = Thrift::MultiplexedProcessor.new
> mp.register 'SomeService',  some_service_processor
> mp.register 'SomeOtherService', some_other_service_processor
> ...
> server = Thrift::SimpleServer.new(mp, transport)
> On the client side:
> some_service = SomeServiceService::Client.new('SomeService', some_service_protocol)
> some_other_service = SomeOtherServiceService::Client.new('SomeOtherService', some_other_service_protocol)
> You only need one transport in both cases.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)