Perl脚本的无服务器执行?

时间:2018-11-02 13:33:54

标签: perl google-cloud-platform serverless

所以我试图将一个非常简单的无服务器应用程序组合在一起,以更好地学习体系结构。这是一件非常基本的事情-用户上传23andme数据,perl脚本将txt文件转换为vcf,然后将其上传到云存储中,Google基因组学将其从那里获取并提供给bigquery进行注释。持久化vm可以很容易地将其自动化到管道中,但是我希望这里的人会知道一些我想念的明显

我对如何将大多数 自动化到一个自动管道中有了一个不错的想法,但是perl脚本似乎有点困难。可能是因为perl是我什至不了解其基本语法的少数几种语言之一,但是除了我用Python重写23andme-vbf脚本或废弃该脚本之外,没有人对我如何使这项工作有任何建议。这个想法的“无服务器”部分,因为使用持久性vm自动化所有这些工作都是微不足道的,但是我希望这可能是我很想念的显而易见的事情。

过去似乎有人在这里问过类似的问题,但到目前为止,我还没有找到任何答案。

3 个答案:

答案 0 :(得分:1)

即使您确实了解Perl的基本语法,这也不是一件容易的事。 the Google Cloud supports Perl的一种运行方式是运行a Mojolicious app inside a Perl Docker container。最后,您需要将Perl脚本包装在一个将部署到云中的Mojolicious应用程序中。

答案 1 :(得分:1)

Google Cloud Blog

所述,Google App Engine支持Perl。

周围有一些示例特别是用于运行Mojolicious应用程序,例如this Github Repo,但我想这很大程度上取决于您如何设计解决方案。

在容器中运行Perl应用程序可能是最简单的方法。

答案 2 :(得分:0)

您可以尝试使用emscripten将perl代码转换为javascript并使用Cloud Functions运行它。

有一些在线工具可让您通过使用emscripten创建的解释器(运行javascript)运行perl。您可以通过在浏览器中粘贴一些perl代码来试用它们:

https://www.shlomifish.org/microperl-web-repl-v1/repl.html
https://gfx.github.io/perl.js/

如果您拥有大型的perl脚本,这可能不是一件容易的事,但这可能是一个起点。