thrift-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Nevo Hed <n...@bamboo-entertainment.com>
Subject Re: Multiple interfaces handled by the same TServer
Date Thu, 10 Mar 2011 19:35:39 GMT
*Is the one port essential or is the desire just to run in a single thread?
*

THRIFT-563 looks like a great idea, but requires mods to clients

a few days ago I realized that I may need to use a similar solution soon,
so I looked at TNonblockingServer (uses libevent)

I figured one could create a server that can create multiple TNBS instances
and link them to this server.

This new server's 'serve' method would share a single eventBase_ (from
libevent).

Yes, I would have multiple ports, but a single threaded

Did I miss anything?

Thanks
  -Nevo



On Mon, Feb 28, 2011 at 6:06 PM, Marlene Marques
<marlene.marques@gmail.com>wrote:

> Hi,
>
> I went through the issues in the project and found a ticket about
> multiplexing services [1], that looks like one of my approaches. I was
> curious why it wasn't committed. Is it for lack of support in other
> languages or you think the feature isn't worthy.
>
> [1] - https://issues.apache.org/jira/browse/THRIFT-563
>
>
> On Mon, Feb 14, 2011 at 5:24 PM, Tony Kinnis <tkinnis@yahoo.com> wrote:
> > This is not exactly what you were looking for but as an alternative you
> can
> > emulate this over HTTP by mapping your different services to URLs. Of
> course,
> > you'll have additional overhead with HTTP but you can support many
> different
> > services on a single server:port. I am currently doing this using Netty
> as my
> > http server and it works very well.
> >
> >
> > ----- Original Message ----
> > From: Bryan Duxbury <bryan@rapleaf.com>
> > To: user@thrift.apache.org
> > Sent: Mon, February 14, 2011 8:25:39 AM
> > Subject: Re: Multiple interfaces handled by the same TServer
> >
> > There's currently no clean way to do this. A while back, there were some
> > proposals on how we could support this directly, but they did not get
> fully
> > implemented. I think it was James King and his "channels" proposal that
> you
> > might want to look for in the mailing list archive.
> >
> > On Mon, Feb 14, 2011 at 5:05 AM, Marlene Marques
> > <marlene.marques@gmail.com>wrote:
> >
> >> Hi,
> >>
> >> Can I have more than one interface being served by the same TServer?
> >>
> >> I'm using a TServerSocket and wanted to have more than one interface
> >> being served in the same port.
> >> I started to implement a TProcessor that has a processMap with the
> >> methods of all the interfaces, but now I have a naming collision and
> >> can no longer use this approach.
> >>
> >> To get things going I had a prefix to the operations of each
> >> interface, but that feels like a really bad hack.
> >> I also went to change the generated code to have the prefix only in
> >> the process map and the TMessage, but this is not a better hack, since
> >> now I can't give my idl to someone to implement a client that works
> >> with my service.
> >>
> >> Thanks,
> >>
> >> Marlene
> >>
> >
> >
> >
> >
> >
>



-- 
Nevo Hed

nhed@bamboo-entertainment.com
617-302-6175

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message