I'm not sure I understand.  There's nothing stopping you from spreading your
definitions out among multiple .proto files which import each other, and
there's nothing stopping you from exporting multiple services from a single
server.  You'll need to design a protocol that allows it, but protocol
buffers doesn't do anything to prevent it.  Can you be more specific about
the problem you're facing, maybe giving an example?
On Wed, Nov 19, 2008 at 12:21 AM, codeazure <[EMAIL PROTECTED]> wrote:

> I've been struggling to work out how to use PB's RPC mechanism within
> my application. I don't have a problem with the simple usage of it or
> the transport side. It's more how I would scale it up within a larger
> modular application.
> My application can run on multiple machines that need to talk to each
> other. Think of it as a classic distributed computing problem.
> This application is composed of a number of modules. Some of them will
> have one or more functions that need to be called via RPC. Different
> builds of the application may use some different modules (for device
> drivers, etc).
> I plan to have a TCP server socket that will run at a predefined port
> that will provide the connection for one instance of my application to
> talk to others of its kind. So each machine can be configured to
> connect to one or more others using this port as the transport for RPC
> messages. Fairly standard way of doing things I hope.
> My problem is how do I use the RPC interface in PB to bind all the RPC
> function calls scattered across my application? The only way I can see
> is to have a single proto file that defines everything from every
> module in a single place.
> From a design point of view, I find this somewhat ugly as it makes a
> mockery of all my fine efforts to design software in a modular way. It
> also makes it very tricky if I'm defining the interface for modules
> that may not be enabled in a given implementation.
> Is there another approach I'm missing? Can each module have it's own
> local RPC section that is somehow combined in the complete application
> to present a unified interface?
> From my understanding, there is only a single Service and Controller
> defined for a single RPC server. Is this wrong? Can I define a bunch
> of Services and bind them to a single port?
> Sorry for the long email - it's a tricky thing to explain.
> >

You received this message because you are subscribed to the Google Groups 
"Protocol Buffers" group.
To post to this group, send email to protobuf@googlegroups.com
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 

Reply via email to