Note that there are some explanatory texts on larger screens.

plurals
  1. POThrift server facade for clients
    text
    copied!<p>I am having a little trouble with a server / client design and wonder if anyone had any advice.</p> <p>I have a Thrift server that abstracts a data store. The idea is that there will be a number of clients that are essentially out of process plugins that use the interface provided by the server to receive, manipulate the underlying data store and also provide their own data. There will be a number of other clients which simply access the data provided by the server and its "plugins".</p> <p>The problem case is when one of these "plugins" wishes to provide its own data and provide an interface to that data. The server should have no knowledge of the plugins data or interface.</p> <p>I would ideally like all clients to access functionality through the main thrift server so it acts as a facade for the plugins. If a client requested some data provided by a plugin the main server could delegate to the plugin to provide that data. I guess this would mean have each plugin being a thrift client and server. I have written the server in python so could probably handle thrift calls that are not yet defined but would it be possible to forward these calls another thrift server IE act as a proxy ?</p> <p>An alternative is maybe have the plugins be clients only and push data to the server. But the format of these messages would unknown to the server and would have to be generic enough to accommodate different types of data. I not sure how I would provide a useful interface to this data to other clients.</p> <p>As far as I can see only the plugins knows how to store and manipulate the data it owns so this idea probably would not work.</p> <p>Thanks for any advice. Any suggestions welcomed.</p>
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload