是否可以从 Google Cloud 上的 Flask webapp 调用 matlab.engine?

问题描述

我有一个在 Google Cloud App Engine 中运行的 Flask 应用。我希望用户能够在他们的本地实例上调用 MATLAB 函数——当然,如果他们在本地安装了 MATLAB 并且拥有正确的许可证。

在本地运行应用程序使用 matlab.engine 运行良好,但是,当部署到谷歌云平台时,它在构建过程中失败。查看日志:

ModuleNotFoundError: 没有名为“matlabengineforpython3_7”的模块

所以我怀疑是因为服务器无法导入python matlab引擎包所需的dll等。

有没有办法将所需的文件传递给谷歌应用引擎?这种方法是否可行?

我的用户将始终拥有 MATLAB 的本地副本,因此我正在尝试寻找一种无需支付 MATLAB 服务器许可证费用的解决方案。

解决方法

我不相信有任何解决方案可以避免 Matlab 服务器许可证。您的服务器无法访问您用户计算机上已安装的 Matlab。

要使用 App Engine 安装非 Python 软件,您需要将自定义运行时与 App Engine Flexible 配合使用。查看 GAE 文档了解更多详情。