#Good ways to allow UDFs in distributed framework.

2 messages · Page 1 of 1 (latest)

rain rock
#

Hi I've been recently going into golang and wondering if there are any good ways for a distributed frameworks to accept user defined functions (udf) and deploy them remotely.

For example Python's ray allows you to use @ray.remote decorator to mark any UDF and deploy them remotely. Is there any similar implementation in Golang? It seems impossible to do this to remote machines without compiling them in binary in Golang.

Currently I've seen to approaches:

  1. This library uses jsonrpc but is really old : ( https://github.com/natefinch/pie/tree/master
  2. Service Weaver uses custom code generation to parse the user code into something that can be deployed remotely though weaver generate . command. This is way beyond the scope of what I intended to do. https://github.com/ServiceWeaver/weaver

I'm I missing something here? Is there any better way to implement this?

Thanks!

GitHub

a toolkit for creating plugins for Go applications - natefinch/pie

GitHub

Programming framework for writing and deploying cloud applications. - ServiceWeaver/weaver

indigo forge
#

https://pkg.go.dev/plugin

works OK. u have to be careful with versioning and building code but that's probably always true with plugins