python运行的结果可以下载吗
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python运行的结果可以下载吗相关的知识,希望对你有一定的参考价值。
参考技术A 可以啊。在用Python编写批量任务、批量下载的项目中,当任务完成后需要输出任务结果,比如下载的文件数、任务名称等。一般情况下是在任务全部完成后一次性输出结果的,在此过程中会有很长一段时间没有信息输出,处于静默状态,以致于可能被认为程序没有正常运行,也无法得知当前执行到哪一步。
为了实时可视化显示任务的运行状态,Python中可以使用文本进度条来实现。文本进度条跟图形界面相比,以极低的资源消耗便可以实现类似的功能。
您可以在 Cloud Run 容器中运行沙盒容器吗?
【中文标题】您可以在 Cloud Run 容器中运行沙盒容器吗?【英文标题】:Can you run a sandbox container within a Cloud Run container? 【发布时间】:2020-08-12 14:50:03 【问题描述】:假设我要让用户上传一些 python 或 bash 脚本,在云运行中执行它并返回结果。为此,我将使用无权访问项目资源的服务帐户创建一个 Cloud Run 服务。我也想在嵌套容器中运行脚本,这样用户就不会干扰服务器代码并操纵来自其他用户的连续请求。
如何使 gvisor runsc 或其他一些沙盒运行时在 Cloud Run 上运行的容器中可用?
我发现一些资源提到在原始容器上使用特权标志,但这在 Cloud Run 中是不可能的。此外,我找不到有关如何使用 runsc 运行无根容器的任何信息。让我知道我是否走在正确的轨道上,或者这是否可以通过云运行实现,或者我应该使用其他服务吗?
谢谢。
【问题讨论】:
【参考方案1】:目前,Cloud Run(完全托管)本身在 gVisor 沙箱上运行,因此它可能无法支持使用 cgroup 或 Linux 命名空间 API 创建更多容器环境的低级 Linux API。
但是,由于 gVisor 在技术上是一种用户空间沙盒技术(尽管我不确定它需要什么级别的权限),您也许可以在 gVisor 中运行 gVisor 沙盒,尽管我不抱太大希望因为它可能不是为此而设计的。我猜 gVisor 沙盒不提供 ptrace
功能让嵌套沙盒工作,尽管您可以在 gVisor 自己的 GitHub 存储库上询问这个问题。
对于这样的用例,我建议查看 GKE 上的 Cloud Run for Anthos,它与 Cloud Run 的开发人员体验类似,但在具有完整 Linux 系统调用套件的 GKE 节点(即 GCE 虚拟机)上运行您的应用程序可供他们使用。由于 Kubernetes podspec 在那里可用,您实际上可以创建特权容器,并在其中运行虚拟机等。
通常容器本身应该是沙箱,因此尝试创建更多沙箱 (like you asked earlier) 将是大量依赖于平台的工作,即使您可以以某种方式使其运行。
【讨论】:
也许我来晚了,但是这篇文章解释了如何创建一个沙箱 pod 来实现完全隔离cloud.google.com/kubernetes-engine/docs/concepts/sandbox-pods 根据第二代运行时环境,现在应该可以使用 gVisor (cloud.google.com/run/docs/about-execution-environments) 运行不受信任的代码。但是,我没有找到任何关于它应该如何工作的解决方案或文档(在此处询问第二代运行时:***.com/questions/69846927/…)。以上是关于python运行的结果可以下载吗的主要内容,如果未能解决你的问题,请参考以下文章
将 BQ 查询结果下载到 Python 数据框时出现 504 Deadline Exceeded 错误