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 http://groups.google.com/group/protobuf?hl=en -~----------~----~----~----~------~----~------~--~---