[bind10-dev] Our messagebuss again
Michal 'vorner' Vaner
michal.vaner at nic.cz
Tue Mar 20 09:18:21 UTC 2012
Hello
On Mon, Mar 19, 2012 at 11:22:20AM -0700, JINMEI Tatuya / 神明達哉 wrote:
> > • Easy to use RPC. We have a way to send a command and wait for the answer
> > (either synchronously or asynchronously). But it is cubersome. I think we
> > should introduce some methods like result = cc.callSync("Auth", "ping",
> > parameters); and cc.callAsync("XfrIn", "retransfer", parameters, callback);
>
> This would certainly be something we need to address if we keep the
> current framework. The current implementation often uses synchronous
> operations even if it can potentially block. When system works
> smoothly this may be okay but it can easily cause system-level failure
> once one component starts acting strangely.
Well, I meant it mostly because of convenience (calling a remote command takes
like 10 lines of code both in C++ and python). I'd like it to be comparable with
calling a local function/method.
But you certainly have a point that there are cases we should prefer
asynchronous code to synchronous, even if it is slightly less convenient
(because you need to provide the callback and need to keep the state somewhere ‒
which can be done with closures in python, but is slightly harder with C++ ‒ I
have some ideas how to do it in an easy way to wrap function pointers
automatically by templates, but that's a technical detail for the possible
future ticket). But I think there are places where we just can keep using
synchronous calls, like requests to the config manager (if that one dies, we are
in trouble anyway).
> From a quick look others seem to be important, but right now I don't
> have a particular suggestion of how to address these.
Actually, I gave a rough suggestion for each of them how to handle them ;-).
What I wanted to know is:
• Do you think the list make sense?
• Do you know of anything you're missing or that annoys you?
• Do you think it is reasonable amount of work and less than implementing our
own interface to DBus (and bending the DBus to accept our addressing schemes or
bending all the components to use DBuses)?
Thank you
--
2 keys should be enough for everyone
Michal 'vorner' Vaner
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 198 bytes
Desc: Digital signature
URL: <https://lists.isc.org/pipermail/bind10-dev/attachments/20120320/c43d2fd2/attachment.bin>
More information about the bind10-dev
mailing list