【问题标题】:Python script running as screen process gets "Killed" on Ubuntu / AWS EC2作为屏幕进程运行的 Python 脚本在 Ubuntu / AWS EC2 上被“杀死”
【发布时间】:2021-06-24 11:22:00
【问题描述】:

我想在我的 Ubuntu 实例上不断运行一个 python 脚本。它是一个 AWS EC2 a1.medium 实例,脚本不断占用几乎 100% 的 CPU。

我以screen <run script> 开始脚本,但是它被随机杀死,我不知道为什么。有一次我让它在前台运行,我看到“Killed”是该进程的最后一个输出。

我尝试使用sudo screen <run script> 以root 身份运行它,但我得到[screen is terminating]。不确定 root 是否会有所帮助。

有什么办法可以解决这个问题吗?我尝试使用 -L -Logfile <filename> 对文件具有适当的权限,但它保持为空,所以我真的不知道如何判断出了什么问题。

【问题讨论】:

    标签: python ubuntu amazon-ec2


    【解决方案1】:

    您的脚本的性质是什么?是否受 CPU/内存限制? 我假设您过度使用 a1.medium EC2 实例中提供的 vCPU

    你也可以看看this了解偷时间

    【讨论】:

    • 该脚本使用一个 Web API,大约 1MB/秒的数据,在 postgres 数据库中处理和写入少量数据。我选择了 A1 系列实例,因为它们没有信用系统,您可以随心所欲地使用 vCPU。
    • 好的,它的 I/O,你能分享一下脚本,以便尝试处理错误,或者看看是否可以采取一些措施来捕获错误?
    • 你在while True下运行消费者脚本吗?
    • 是的,但我的机器上使用该脚本没有任何问题,它可以运行数天而不会中断。
    • 也许我应该调查一下 - upstart.ubuntu.com - “如果服务意外死亡,它们可能会重生”,但这看起来像是一个创可贴,而不是解决问题。
    猜你喜欢
    • 2014-11-06
    • 1970-01-01
    • 2018-08-30
    • 2021-05-02
    • 1970-01-01
    • 2011-08-26
    • 1970-01-01
    相关资源
    最近更新 更多