7 ms·
I once wrote a system for distributed data processing (8-10 years ago). There was a base class that when inherited from would, via Interception reroute a call
by DrDeadCrash 3y ago
I once wrote a system for distributed data processing (8-10 years ago). There was a base class that when inherited from would, via Interception reroute a call to any virtual method to a server with the same interface loaded (plug-in architecture). The server would then delegate the method to one of its worker clients, which had the (same) required plugin(s) loaded. It worked over TCP on a local intranet. Once the admin-server-worker plugin system was figured out, projecting a virtual method was fairly transparent. There's always going to be some boiler-plate!
- calebpeterson 3y agoI suspect parent was referring more to the runtime characteristics of latency, error handling, retries, load balancing, etc… more than the syntax. Nonetheless, what you built sounds quite interesting: can you say anything more about the language, tech stack, etc…?
- photonthug 3y agoNot OP but I too have built this, basically a few hundred lines of python to implement something like json rpc (plus introspection to answer help requests / publish typed api info) on top of AWS lambda.
- osigurdson 3y agoI had to replace a .NET remoting based system with thousands of individual calls, with all manner of in process like conventions, with an http layer without changing client code at all in a few weeks. The result was good but I still don't like transparent rpc (on large dev teams anyway).