Skip to content
Discussion options

You must be logged in to vote

Given that Dask must own scheduling and the legacy deployment has to remain in place, I would start with ordinary Dask workers running a thin protocol adapter, rather than subclassing Distributed's full Worker class.

A Dask task on an adapter worker can encode the task as your size-prefixed protobuf message, send it to the legacy endpoint, wait for the matching response, and return the result (or raise on a remote failure). Dask then tracks that adapter task as a normal Future through queued, running, completed, or failed states.

For concurrency, advertise the legacy capacity as an abstract Dask resource on the adapter worker, for example resources={'legacy_slot': N}, and submit each brid…

Replies: 2 comments 1 reply

Comment options

You must be logged in to vote
1 reply
@naquad
Comment options

Comment options

You must be logged in to vote
0 replies
Answer selected by naquad
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Category
Q&A
Labels
None yet
3 participants