openwhisk-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Rodric Rabbah <rod...@gmail.com>
Subject Re: [LONG] Discussing my implementation of Go actions
Date Sun, 11 Mar 2018 13:02:47 GMT
Continuing on my earlier post about the native function interface, and following up on the
latest changes as suggest by Vadim, i wanted to also point out that the /init protocol today
is synchronous, whereas to do validation on the binary or to exec a new process, it’s worth
considering an asynchronous handoff.

So one thought is to augment the protocol to allow /init to initiate the new binary (load
it, exec it) and a /ready to poll which waits for a response. This bring you closer to the
original prototype where you exec’ed the binary.

It also makes for a consistent protocol for a native Functions with their own builtin proxy
(go, swift, rust, and also has less copying of data at runtime), and later can be adapted
for a native function like a bash script which needs a proxy to relay payloads and results.

The /init equivalent for the latter is starting the script, and /ready is waiting for {openwhisk:
1}.

-r
Mime
View raw message