精选优惠 · 官方会场

轻量应用服务器

新用户专享

2核2G · 200M峰值带宽 · 40G系统盘

限阿里云新用户
68元/年限阿里云新用户
立即选购

云服务器 ECS

新老同享

经济型e · 2核2G · 3M固定带宽 · 40G盘

同主体限1台 · 不可叠券
99元/年同主体限1台 · 不可叠券
立即选购

云数据库 RDS

数据库精选

托管数据库 · 弹性扩容 · 自动备份

按地域与配置选择
查看活动价按地域与配置选择
查看优惠
更多阿里云活动收起阿里云活动
11月1日—30日企业至高减 1728 元

双11满减礼包

个人至高减360元;需对应实名认证,满减门槛及适用产品以官方规则为准。

前往官方会场
AI 专场让 AI 应用轻松上云

AI 产品特惠

浏览 Token Plan、Qoder 与 AI 应用等官方活动,按实际使用需求选择。

前往官方会场
搭配更省心服务器 + 数据库

云产品组合购

查看 ECS、RDS 等组合活动,按业务规模和实际预算搭配。

前往官方会场
官方活动合集热门云产品,一站选

云小站更多特惠

继续查看服务器、数据库与存储等优惠,选择适合自己的配置。

前往官方会场

脚本挂阿里云服务器,断线后怎么自动重连

脚本在本地跑得稳,搬到服务器上却常出问题。终端一关进程就没了,服务器重启后任务没人拉起,有时脚本悄悄报错退出,几天后才发现数据断了一截。所以脚本挂阿里云服务器,难点通常在断线、重启和出错之后,它还能不能自己恢复。让它先跑起来,反而是最容易的一步。这里借一位朋友的例子说明问题出在哪,再讲守护方式、安全设置和上线前的检查项。

脚本挂阿里云服务器,断线后怎么自动重连

从一个抓取脚本的遭遇说起

一位做电商选品的朋友写了个 Python 脚本,每十分钟抓一次竞品价格,写进 MySQL。在自己笔记本上跑得不错,可笔记本一合盖,数据就出现缺口。于是他买了台阿里云 ECS,打算把脚本搬上去。

他第一次直接在 SSH 终端里运行 python3 spider.py,关掉终端,脚本也跟着没了。接着他在命令后面加了 & 放到后台,能跑,但服务器一重启又得手动来一遍。两周后,数据库里出现了一段三天的空白。原因是网络超时抛了异常,脚本直接退出,没有任何提醒。

这几个坑很典型:进程和终端绑在一起,开机不会自动拉起,异常也没人知道。下面逐个处理。

先让脚本能独立跑起来

守护之前,先确认脚本在服务器上不依赖你本机的环境。这一步看着琐碎,但很多故障都出在这里。

  • 用虚拟环境装依赖,别用系统自带的 Python 包,用 venv 或 conda 隔离,并把 requirements.txt 一起传上去。
  • 路径用绝对路径,配置文件和日志文件都写完整路径。进程的工作目录和你手动执行时不一样,相对路径很容易找不到文件。
  • 密码和密钥不写进代码,数据库密码、API 密钥走环境变量或独立的配置文件,别硬编码,更别提交到代码仓库。
  • 先手动跑一遍,在服务器上直接执行一次,确认依赖齐全、目标地址能访问、数据库连接正常。

选对守护方式

长期运行的脚本常见有三种做法。选之前先分清脚本是跑完就退出,还是一直运行。

nohup、screen 和 tmux

nohup 能让进程在退出终端后继续跑,并把输出重定向到日志文件,大致可以这样写:

nohup python3 /opt/spider/spider.py > /opt/spider/run.log 2>&1 &

上手最快,适合临时跑一下的任务。短板也很明显:服务器重启后不会恢复,进程挂了也没人管。screen 和 tmux 把任务挂在一个可以随时重连的会话里,方便看输出,但同样解决不了开机自启和崩溃重启的问题。

crontab 定时触发

如果脚本是定期执行一次、跑完就退出的类型,crontab 最合适。比如每十分钟执行一次,可以这样写:

*/10 * * * * /usr/bin/python3 /opt/spider/spider.py >> /opt/spider/cron.log 2>&1

它简单,系统自带,重启后依然有效。有两个地方要留意。cron 的环境变量很少,最好在脚本里写明解释器的完整路径。另外,如果上一轮还没结束,下一轮又触发了,就会重复执行,可以用 flock 加一把文件锁挡住。

systemd 常驻守护

对于需要持续运行的服务型脚本,比如一直监听消息队列的消费者,推荐 systemd。它支持开机自启、崩溃后自动拉起,还能统一查看状态。一个最简单的服务文件长这样:

[Unit]
Description=price spider
After=network.target

[Service]
ExecStart=/opt/spider/venv/bin/python /opt/spider/spider.py
WorkingDirectory=/opt/spider
Restart=always
RestartSec=5

[Install]
WantedBy=multi-user.target

保存到 /etc/systemd/system/spider.service 后,执行 systemctl daemon-reload,再用 systemctl enable –now spider 启动。之后用 systemctl status spider 看状态,用 journalctl -u spider 看日志。团队如果更习惯 Python 生态,supervisor 也能做到类似的事,配置思路相近,同样支持自动重启。

回到那位朋友的方案

他的脚本是持续抓取,但每一轮本身是有限的任务,所以最后选的是 systemd 加脚本内部的循环和异常捕获。他做了三处调整。

  1. 主循环里用 try/except 包住单次抓取。网络超时只记一条日志,等下一轮再来,进程不退出。
  2. systemd 设置 Restart=always,即使真的崩溃也能被拉起。
  3. 在阿里云控制台开通云监控,给服务器的 CPU、内存设置告警,并把关键节点的失败日志推送到钉钉机器人。

调整之后,他连续运行了两个月,没有再出现数据断档。他觉得,“脚本能跑”和“脚本能稳定地跑”之间隔着的,主要是异常处理、自启动和告警这一层。

上线前的安全和日志

脚本挂在公网服务器上,安全不能靠运气。以下几项最好在上线前做完。

  • 安全组只开必要端口,如果脚本只需要主动访问外网,入方向就不用开额外端口,SSH 也只放行可信的来源 IP。
  • 关掉密码登录,改用 SSH 密钥,并禁止 root 直接远程登录。
  • 日志做轮转,长期运行的脚本日志会越长越大,用 logrotate 按天或按大小切分,免得占满磁盘。
  • 核心数据要有备份,可以用阿里云快照,也可以用数据库自身的备份功能,并定期检查备份能不能恢复。

上线前检查清单

每次部署前对照以下几条过一遍。

  • 依赖在虚拟环境里固定了版本,并在服务器上手动跑通过一次。
  • 配置和密钥与代码分开,没有明文进仓库。
  • 守护方式已选定:定时任务用 crontab,常驻服务用 systemd,并设置开机自启。
  • 单次失败有兜底,不会让整个进程退出。
  • 日志路径明确、已配轮转,出问题时能快速找到。
  • 安全组和 SSH 登录方式已加固。
  • 至少配置了基础告警,能知道脚本是不是停了。

脚本挂阿里云服务器本身不复杂。费功夫的是把“跑起来”变成“长期稳定地跑”。先选对守护方式,再把日志、告警和安全补齐,大部分问题都能提前避开。

赞 (0)
阿里云等保四级要落地,云上哪些控制项要自己做
上一篇 2026年11月1日 下午3:32
西湖区阿里云谷租房,通勤、房源和签约要注意什么
下一篇 2026年11月1日 下午3:32

相关推荐

  • 阿里云双11买云服务器怎么算更省钱

    每年双11前后,阿里云一般会推出云服务器、云数据库、对象存储等产品的活动价。对个人开发者、小团队和初创公司来说,这段时间确实适合补充资源。不过活动规则每年都会调整,具体折扣和券的门槛,还是以下单当天的页面为准。 促销季最常见的问题是看到便宜就买,结果配置和业务对不上,或者第二年续费比首购贵很多。下单前先把需求想清楚,比单纯比价更有用。 二、下单前先弄清楚要什…

    2026年10月31日
  • 云服务器100元一年够用吗?建站、跑小程序分别怎么选

    不少人第一次搜云服务器,先看的就是价格。一台100元左右的云服务器听着不贵,但它能干什么、干不了什么,很多人心里没底。这篇文章不堆参数,只从几个实际用法出发,看看这个价位适不适合你。 百元档的云服务器到底是什么配置 云服务器的价格主要由CPU核数、内存大小、硬盘类型、带宽和流量额度决定。百元左右的产品,一般是1核或2核、1G到2G内存,系统盘容量有限,带宽也…

    2026年10月31日
  • 腾讯云服务下载入口在哪,官方工具和镜像怎么拿

    第一次接触腾讯云的开发者,常常卡在一个不起眼的环节:服务怎么下载,工具装在哪,版本该选哪个。概念不难,但渠道选错了,后面的安装、登录和联调都会跟着变麻烦。这篇文章按实际场景梳理腾讯云服务下载的入口和注意事项,主要给刚上手的同学和做运维的同事参考。 先分清你要下的是什么 在腾讯云的使用场景里,“下载”指的东西不少,拿法也各不相同。先确认对象,才知道该去哪找。 …

    2026年10月30日
  • 租gpu云服务器训练和推理怎么配,显存与计费差在哪

    做模型训练、AI推理或者视频渲染的时候,本地显卡不够用是常见情况。买一张高端卡价格不低,机器还要放在合适的地方散热、运维。这时候租GPU云服务器往往更省心,用多少付多少,硬件和机房的事都不用自己管。 不过市面上的GPU云服务商不少,价格表、机型和计费方式看起来各不相同。很多人第一次租,都是在账单出来以后才发现哪里没算清。下面按实际使用的顺序,说说怎么配机器,…

    2026年10月31日
  • 恒源云GPU服务器怎么租?个人和小团队用卡要注意什么

    做模型训练或图像生成时,很多人最先遇到的问题是显卡不够用。自己买卡要一次性投入不少钱,显卡更新快,驱动、CUDA 和框架版本还得自己折腾。如果不常跑任务,按需租用云端 GPU 服务器通常更省心。恒源云GPU服务器就是可以纳入比较的选项之一。 什么时候适合租,什么时候还是自己买 任务不连续的时候,租用更划算。比如每周跑一两次微调,或者偶尔渲染一批图,用完就停,…

    2026年10月31日
返回顶部