返回介绍

1. 禅道介绍

2. 安装禅道

3. 升级禅道

4. 维护配置

5. 快速入门

6. 按照角色使用

7. 功能介绍

8. 其他相关

其他内容

通过 Roadrunner 管理定时任务

发布于 2024-08-03 20:26:10 字数 3594 浏览 0 评论 0 收藏 0

1 为什么引入Roadrunner?

禅道从开源版18.9企业版8.9旗舰版4.9IPD版1.1.1 开始,为了提升计划任务的性能与稳定性,引入了Roadrunner服务,负责管理复杂,耗时的定时任务,确保任务在后台运行完成,并维护后台任务的运行状态。

注意:

  • 运行Roadrunner后,会在后台运行4个PHP进程。
  • 初始情况下,Roadrunner与4个PHP进程占用200M左右的内存。
  • 18.9 版本开始,一键安装包、docker镜像,包含了Roadrunner服务。

2 什么情况下需要运行Roadrunner?

Roadrunner 并不是必须的,当现有的定时任务运行正常时,不需要通过Roadrunner来管理定时任务。

当有如下情况时,可考虑单独运行Roadrunner,来管理定时任务:

  • 数据库单表记录数超过10万
  • 定时任务执行失败
  • 定时任务运行时影响正常业务

3 如何运行Roadrunner

下文会依次介绍源码与一键安装包部署的禅道,如何下载与运行Roadrunner,以Linux系统为例,root用户执行。

3.1 源码部署的禅道

3.1.1 下载Roadrunner

# 下载到/tmp 目录
curl -skL https://github.com/roadrunner-server/roadrunner/releases/download/v2023.3.5/roadrunner-2023.3.5-linux-amd64.tar.gz | tar xvz -C /tmp/

# 移动到 /usr/local/bin 目录
mv /tmp/roadrunner-2023.3.5-linux-amd64/rr /usr/local/bin

# 查看版本信息
rr -v
rr version 2023.3.5 (build time: 2023-11-16T14:06:45+0000, go1.21.4), OS: linux, arch: amd64 

更多系统的下载地址,请访问release

3.1.2 运行Roadrunner

注意:运行Roadrunner之前,请确保禅道的版本高于开源版 18.9 ,企业版 8.9,旗舰版 4.9,IPD版 1.1.1

# 运行Roadrunner
nohup /usr/local/bin/rr serve -w <禅道代码目录>/roadrunner -p > /var/log/zentao-rr.log 2>&1 &

# 查看运行日志
cat /var/log/zentao-rr.log 

注意: 请执行Roadrunner之前,请确保PATH变量中包含php的二进制文件。


3.1.3 关闭Roadrunner

# 通过rr命令关闭
/usr/local/bin/rr stop -w <禅道代码目录>/roadrunner 

3.2 一键安装包部署

3.2.1 下载Roadrunner

# 下载到/tmp 目录
curl -skL https://github.com/roadrunner-server/roadrunner/releases/download/v2023.3.5/roadrunner-2023.3.5-linux-amd64.tar.gz | tar xvz -C /tmp/

# 移动到 /opt/zbox/bin 目录
mv /tmp/roadrunner-2023.3.5-linux-amd64/rr /opt/zbox/bin

# 查看版本信息
/opt/zbox/bin/rr -v
rr version 2023.3.5 (build time: 2023-11-16T14:06:45+0000, go1.21.4), OS: linux, arch: amd64 

3.2.2 运行Roadrunner

注意:运行Roadrunner之前,请确保禅道的版本高于开源版 18.9 ,企业版 8.9,旗舰版 4.9,IPD版 1.1.1

# 运行Roadrunner
export PATH=$PATH:/opt/zbox/bin
nohup /opt/zbox/bin/rr serve -w <禅道代码目录>/roadrunner -p > /opt/zbox/logs/rr.log 2>&1 &

# 查看运行日志
cat /opt/zbox/logs/rr.log

注意:

  • <禅道代码目录> 替换为实际的禅道版本,如 /opt/zbox/app/zentao/roadrunner

3.2.3 关闭Roadrunner

# 通过rr命令关闭
/usr/local/bin/rr stop -w <禅道代码目录>/roadrunner 

注意:

  • <禅道代码目录> 替换为实际的禅道版本,如 /opt/zbox/app/zentao/roadrunner

4 其他说明

  • Roadrunner更新比较频繁,请关注禅道官方发布时使用的版本,为了减少兼容性问题,尽量参考禅道官方使用的版本。
  • 如果通过rr命令无法停止Roadrunner服务,可以直接通过 kill -9 的方式关闭。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文