(no title)
tomasol | 10 months ago
Yes, currently all activities must conform to the WASI 0.2 standard. This is the simplest for deployment, as you only need the obelisk executable, toml config file. The webhooks, workflows and activities pulled from a OCI registry on startup.
To support native code I plan to add external activities as well, with an interface similar to what Netflix Conductor uses for its workers.
> Finally, do you see the component's interface as the right layer for capturing IO?
An activity must encapsulate something much higher level than a single IO operation. So something like "Configure BGP on a router", "Start a VM" etc. It needs to be able to handle retries and thus be idempotent.
Regarding performance, a workflow execution can call 500-700 child executions serially, or around 1400 child executions concurrently per second.
jcmfernandes|10 months ago
I was referring to the workflows, that is, writing the workflows in managed languages, not the activities.
Out of curiosity, are you working full-time on this? I'm working part-time on the same problem, looking to go full time soon, and it's interesting to see how the same ideas are popping up somewhat independently across different projects :) let me know if you're interested in chatting!
tomasol|10 months ago
Ah understood. I have no plans supporting native workflow executors.
> Out of curiosity, are you working full-time on this?
Yes, currently I work on it full time.
> I'm working part-time on the same problem, looking to go full time soon, and it's interesting to see how the same ideas are popping up somewhat independently across different projects :)
Nice website! I also see the ideas of determinism, replayability etc more and more.
> let me know if you're interested in chatting!
Sure, my email is visible in the Git commit history.