Hi,

Services can be combined to use one shared communication endpoint (i.e. 
socket, named pipe, what have you) by multiplexing via TMultiplexTransport.

Other than that, it's one endpoint - one service.
Note that this does not imply, that the same service cannot run on many 
machines or can't be reachable via multiple endpoints!

Unfortunately the term "server" is overloaded, so if the above does not 
answer the question please try to be more specific (example maybe?).

Have fun,
JensG



-----Ursprüngliche Nachricht----- 
From: Dedipyaman Das
Sent: Tuesday, August 27, 2019 4:34 PM
To: [email protected]
Subject: What kind of relation should a server have with its handlers?

Hi,
Thanks for the clarification.

I have another query:

Should the relation between a server and the service handlers be one to
many or one to one?

Should one server be responsible for delegating responsibilities to all the
handlers or should each service have a server of its own?

In that case, do I assign each server different ports or ips in the local
network to communicate through?

Regards,
Dedipyaman

On Mon, Aug 26, 2019, 11:20 PM Jens Geyer <[email protected]> wrote:

> Hi,
>
> although you can combine languages in general, this is restricted to what
> the underlying platform allowes and has absolutely nothing to do with
> Thrift. For example, I could link a library that is written in C into some
> other language, or combine a C# Thrift assembly with another NET language,
> like F#. If there is no tecghnical way under the suin to integrate Java dn
> Go into one process and call each other (which is the absolute minimum
> requirement) I'd say there is no way to achieve that.
>
> In that regard and aside from that, there is no additional magic in
> Thrift.
> Thrift only deals with serializing and deserializing data and
> sending/receiving them across some transport mechanism. That's no rocket
> science, it's just a matter of standardizing stuff and make it efficient.
>
> One could use Thrift to have different parts of an application talk to
> each
> other (that's not your use case, I know). E.g. we have a scenario where we
> load a native Win32 DLL into a C# application and use Thrift to take off
> the
> burden from the application developers to deal with the technical details
> and possbible complications of PInvoke etc.
>
> Have fun,
> JensG
>
>
>
> -----Ursprüngliche Nachricht-----
> From: Abhishek Chhajer
> Sent: Monday, August 26, 2019 5:55 PM
> To: [email protected]
> Subject: Re: Can I use a Nonblocking server in one language (Go) and have
> handlers written in another (Java)
>
> I have only worked in Java for thrift.
>
> You are writing code only for handlers. The framework has it's non 
> blocking
> server implementation which you are using in your application.
>
> Note - I am fairly new, so take this with some skepticism.
>
> -Abhishek
>
>
> On Sun, Aug 25, 2019, 9:03 PM Dedipyaman Das <[email protected]>
> wrote:
>
> > I'm trying to use Go's concurrency, so having a server written in go
> makes
> > sense to me. But most of my business logic is written in Java. Can I 
> > make
> > use of a server (some sort of threaded server) in Go and delegate the
> > method calls to handlers implemented in Java?
> >
>
> 

Reply via email to