Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/gwt/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在具有不同模块版本的项目之间共享Dask群集?_Dask_Dask Delayed - Fatal编程技术网

在具有不同模块版本的项目之间共享Dask群集?

在具有不同模块版本的项目之间共享Dask群集?,dask,dask-delayed,Dask,Dask Delayed,我的情况是,多个不同的Flask应用程序很少用于实时统计计算 在这种情况下,当有人浏览其中一个应用程序时,我需要有良好的性能,目前我有一个漂亮而昂贵的云实例为他们服务 我本来希望使用一个Dask集群来减轻繁重的计算负担,但不同的Flask应用程序具有相同库的不同版本,我无法解决这个问题。 例如,每个应用程序都在成对的环境中(生产和测试),并且这些环境总是有不同的模块(根据定义) 至于我在文档中读到的内容,让Dask工作人员基于连接客户机加载相同模块的不同版本而不完全重新加载模块并不是一件小事 是

我的情况是,多个不同的Flask应用程序很少用于实时统计计算

在这种情况下,当有人浏览其中一个应用程序时,我需要有良好的性能,目前我有一个漂亮而昂贵的云实例为他们服务

我本来希望使用一个Dask集群来减轻繁重的计算负担,但不同的Flask应用程序具有相同库的不同版本,我无法解决这个问题。 例如,每个应用程序都在成对的环境中(生产和测试),并且这些环境总是有不同的模块(根据定义)

至于我在文档中读到的内容,让Dask工作人员基于连接客户机加载相同模块的不同版本而不完全重新加载模块并不是一件小事

是否有可能拥有一个共享的Dask集群来卸载使用相同模块的不同版本的应用程序的计算

--编辑--

我在这里看到了一个相关的问题:

这里有一个公共关系:

否,不能让dask工作人员针对不同的工作负载使用不同版本的软件包。事实上,客户端、调度器和工作人员之间的模块的不同版本可能会自行导致故障


您可以通过为不同的资源分配不同的环境(例如docker图像)并为每个工作负载申请资源来获得创造性。。。但是,如果您尝试这样做,您将完全依靠自己。

我已经尝试对未安装在worker上的软件包使用cloudpickle,看起来它正在工作,但我不知道worker上未勾选的对象在名称相同的情况下是否会相互冲突。我很惊讶这是可能的,很高兴看到cloudpickle正式支持它。不,我不认为这些名字会引起冲突。唯一的冲突可能来自任务的散列键,由该任务的函数和参数组成。因为您对此感到非常惊讶,所以我对它进行了更彻底的验证,并发现它是有效的,但前提是我对作为内部函数或lambda的函数进行了cloudpickle处理。如果我在第一级直接在模块中使用函数,它将不起作用。我现在有点困惑。lambda本身可以调用一级函数,它可以正常工作