首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

旧的Sidekiq作业将永远重试。Sidekiq UI上没有可见性

旧的Sidekiq作业将永远重试是指在Sidekiq任务队列中,如果一个作业在执行过程中发生错误或失败,它将被自动重试直到成功为止。这种机制确保了任务的可靠性和稳定性。

Sidekiq是一个用于处理后台任务的Ruby库,它基于Redis实现了一个简单而强大的消息队列系统。它可以与Rails和其他Ruby应用程序无缝集成,提供了高效的任务调度和执行功能。

然而,由于旧的Sidekiq作业将永远重试的特性,可能会导致一些问题。如果一个作业在执行过程中遇到了无法自动修复的错误,它将不断地被重试,可能会导致系统资源的浪费和性能下降。此外,如果作业的失败是由于外部原因引起的,比如网络故障或依赖服务的不可用,持续的重试可能无法解决问题。

为了解决这个问题,可以采取以下几种方法:

  1. 设置最大重试次数:在Sidekiq的配置文件中,可以设置每个作业的最大重试次数。当作业达到最大重试次数后,Sidekiq将不再尝试执行该作业,并将其标记为失败。这样可以避免无限重试的问题,并且可以及时发现并处理失败的作业。
  2. 监控和报警:使用监控工具来实时监测Sidekiq的运行状态和作业执行情况。当作业失败次数超过一定阈值时,可以触发报警机制,及时通知开发团队进行处理。
  3. 错误处理和日志记录:在Sidekiq作业中,应该合理处理可能发生的错误,并记录相关的日志信息。这样可以方便开发人员进行故障排查和问题定位。
  4. 任务超时设置:对于一些可能会长时间运行的任务,可以设置任务的超时时间。当任务执行时间超过设定的超时时间时,Sidekiq将自动终止该任务,并将其标记为失败。

总结起来,旧的Sidekiq作业将永远重试的特性是一种保证任务可靠性的机制,但也需要合理配置和监控,以避免潜在的问题。在实际应用中,需要根据具体情况设置最大重试次数、监控和报警机制,并合理处理错误和记录日志,以确保系统的稳定性和性能。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

《Prometheus监控实战》第11章 推送指标和Pushgateway

第11章 推送指标和Pushgateway 在某些情况下,没有可以从中抓取指标的目标。造成这种情况的原因有很多 安全性或连接性问题,使你无法访问目标资源。...在这种情况下,Prometheus作业将会发现目标已完成执行并且不再可以被抓取 目标资源没有可以抓取的端点,例如批处理作业。...Pushgateway肯定不会像Prometheus服务器那样可扩展 与功能齐全的推送监控工具相比,网关更接近于代理,因此,使用它将丢失Prometheus服务器提供的很多有用功能,这包括通过up指标和指标过期进行实例状态监控...这意味着不再存在的实例的指标可能仍保存在网关中 应该将网关的重点放在监控短生命周期的资源(如作业),或者无法访问的资源的短期监控上,然后安装Prometheus服务器以长期监控可访问的资源 提示:PushPox...将使用Pushgateway上的job和instance标签。

4.8K30

Gitlab安装使用及汉化配置

快速驱动(7200 RPM或更高)或固态硬盘(SSD)将提高GitLab的响应速度 #CPU 1核心的CPU,基本上可以满足需求,大概支撑100个左右的用户,不过在运行GitLab网站的同时,还需要运行多个...#Memory  你需要至少4GB的可寻址内存(RAM交换)来安装和使用GitLab!操作系统和任何其他正在运行的应用程序也将使用内存,因此请记住,在运行GitLab之前,您至少需要4GB的可用空间。...例如,MySQL没有正确的功能来以有效的方式支持嵌套组....#Redis and Sidekiq Redis存储所有用户会话和后台任务队列。Redis的存储要求最低,每个用户大约25kB。 Sidekiq使用多线程进程处理后台作业。...这个过程从整个Rails堆栈(200MB)开始,但是由于内存泄漏,它可以随着时间的推移而增长。在非常活跃的服务器(10,000个活跃用户)上,Sidekiq进程可以使用1GB的内存。

6.3K60
  • 无忌过招:手把手教你搭建自己的GitLab库

    架构概述: Unicorn: Handles requests for the web interface and API, 一般gitlab站点,多数是因为这个服务有问题导致的 Sidekiq:...恢复前需要先停掉数据连接服务: gitlab-ctl stop unicorn gitlab-ctl stop sidekiq 如果是台空主机,没有任何操作,理论上不停这两个服务也可以。...迁移数据 如果你没修改过默认备份目录的话,将老服务器/var/opt/gitlab/backups目录下的备份文件拷贝到新服务器上的/var/opt/gitlab/backups [root@localhost...tail logrotate # 检查nginx的日志 sudo gitlab-ctl tail nginx # 检查sidekiq的日志 sudo gitlab-ctl tail sidekiq.../var/opt/gitlab/gitlab-rails/sockets/gitlab.socket: connect: no such file or directory" 原因:unicorn 没有正常启动

    1.1K50

    gitlab备份与还原

    对备份的恢复只能恢复到与备份时的gitlab相同的版本。将gitlab迁移到另一台服务器上的最佳方法就是通过备份和还原。...一、备份 备份路径: 备份文件将保存在配置文件中定义的backup_path中 ,文件名为TIMESTAMP_gitlab_backup.tar,TIMESTAMP为备份时的时间戳。...需要先停掉两个服务,停止连接到数据库的进程(也就是停止数据写入服务,如果是空主机,没有任何操作的话,可以不停止服务,停止相应服务的目的是为了保证数据移植),但是保持GitLab是运行的。...web中删除项目 [root@zutuanxue backups]# gitlab-ctl stop unicorn [root@zutuanxue backups]# gitlab-ctl stop sidekiq...ok: down: sidekiq: 1s, normally up [root@zutuanxue backups]# gitlab-rake gitlab:backup:restore BACKUP

    1.8K20

    GitLab13.8版本CICD部分功能更新

    将按照从左到右的顺序尝试列表中的策略,直到成功进行拉取或列表用尽为止。 什么时候使用多个拉策略? 当Docker注册表不可用并且您需要提高作业弹性时,此功能很有用。...[runners.docker] pull_policy = ["always", "if-not-present"] ---- 项目配置是否存储最新工件 默认情况下,永远不会删除来自最近成功作业的最新工件...您可以在实例的CI/CD设置中对自管理实例上的所有项目禁用此行为 。 禁用该功能时,最新的工件不会立即过期。必须运行新的管道,最新的工件才能到期并删除。 ?...任何needs 关系都显示为将作业连接在一起的线,显示了执行的层次结构: ? 将鼠标悬停在工作上以突出其needs关系: ?...如果配置没有任何needs关系,则不会画线,因为每个作业仅取决于成功完成的前一阶段。

    1.6K20

    私有化代码仓库Gitlab的落地与应用(一)

    使用Git作为代码管理工具,并在此基础上搭建起来的web服务。GitLab拥有与GitHub类似的功能,能够浏览源代码,管理缺陷和注释,可以管理团队对仓库的访问。...GitLab是专门为Unix操作系统开发的,不可运行在Windows操作系统上面,所以需要在Linux虚拟机或者 Docker上安装。...,将配置文件中的端口号修改即可,修改后需要按照第4步重新加载配置文件、重启服务。...五、代码仓库数据迁移 1.旧服务器数据手动备份 先停掉gitlab,然后执行备份命令 gitlab-ctl stop gitla-rake gitlab:backup:create 生成的备份文件会存在...2.新服务器上恢复数据 将备份文件复制到新服务器的/var/opt/backups/目录下,停掉gitlab的puma、sidekiq两个服务,然后执行恢复操作 gitlab-ctl stop puma

    1.2K20

    GitLab的部署、代码克隆和提交、数据备份等

    ,就没有注册用户的选项,只能用已有的账户登录 7)创建一个新用户时会受到邮件通知 8)创建不同的项目、组、账户,将特定用户放到特定的组,实现特定用户对某些项目有查看权限 9)返回到项目列表,并进入一个项目...1202723 HEAD@{5}: commit: v6 ecc001d HEAD@{6}: clone: from http://192.168.1.30/root/web-page.git 6)也可指定目标代码...,避免在备份时开发人员继续提交代码至gitlab中,导致数据不完整 root@ubuntu1804:~# gitlab-ctl stop sidekiq ok: down: sidekiq: 0s, normally...sidekiq ok: down: sidekiq: 0s, normally up root@ubuntu1804:~# gitlab-ctl stop unicorn ok: down: unicorn...oot@ubuntu1804:~# gitlab-ctl start sidekiq ok: run: sidekiq: (pid 80094) 1s root@ubuntu1804:~# gitlab-ctl

    95110

    Linux运维架构师-企业应用持续集成CICD-16

    恢复前需要先停掉数据连接服务: gitlab-ctl stop unicorn gitlab-ctl stop sidekiq 如果是台新搭建的主机,不需要操作,理论上不停这两个服务也可以。...将老服务器/data/gitlab/backups目录下的备份文件拷贝到新服务器上的/data/gitlab/backups [root@localhost gitlab]# rsync -avz 1530773117...实验环境可改成了777,生产环境建议修改属主属组 [root@yunwei-test backups]# pwd /data/gitlab/backups [root@yunwei-test backups...,或者重启所有服务,再打开浏览器进行访问,发现数据和之前的一致: gitlab-ctl start unicorn gitlab-ctl start sidekiq 或 gitlab-ctl restart...; app2,端口802; 在Nginx中,将app1,app2作为负载均衡加载: upstream myapp{ server 127.0.0.1:801; //app1

    32710

    如何用Golang处理每分钟100万个请求

    传统上,我们会研究创建一个工人层架构,利用诸如以下东西: Sidekiq Resque DelayedJob Elasticbeanstalk Worker Tier RabbitMQ 还有等等其他的技术手段...我使用 Go 已有大约 2 年左右的时间,我们公司在处理业务时开发了一些系统,但没有一个能承受如此大的负载。以下是优化的过程。...我们期望有很多请求,但没有达到我们将第一个版本部署到生产环境时开始看到的数量级。 我们完全低估了流量。 上面的方法在几个不同的方面是不好的。 无法控制我们生成了多少个 go routines。...然后我们需要利用常见的解决方案来做到这一点,例如 Resque、Sidekiq、SQS 等等,有很多方法可以实现这一点。...这个想法是将上传到 S3 的数据并行化到某种程度上可持续的速度,这种速度既不会削弱机器也不会开始从 S3 生成连接错误。 所以我们选择创建 Job/Worker 模式。

    97330

    GitLab 14 轻量化运行方案

    对于个人使用场景,由于没有复杂负载压力,做好备份即可保障数据安全,所以监控和性能基准相关的功能都可以考虑关闭。...此外管理调度的 sidekiq 也可以调低并发,避免不必要的资源浪费。...如果你愿意使用轻量的 Drone 对其进行替换的话,可以考虑将默认的 CI 功能关闭,可以将 CPU 资源消耗降低到非常低的数值。...这也是我们常听到的 GitLab “比较重”的本质原因。 在产品越来越面向 B 端用户,有盈利压力的背景下,相比较开发效率,性能永远是最末端需要考虑的事情。...---- 我们有一个小小的折腾群,里面聚集了几百位喜欢折腾的小伙伴。 在不发广告的情况下,我们在里面会一起聊聊软硬件、HomeLab、编程上的一些问题,也会在群里不定期的分享一些技术沙龙的资料。

    3K40

    自托管代码平台Gitlab | 搭建使用教程

    省流:4C4G起步上不封顶,硬盘越大越好 2.2存储 必要的硬盘空间在很大程度上取决于您想在极狐GitLab 中存储的仓库的大小,但作为准则,您应该至少拥有与所有仓库组合占用的空间一样多的可用空间。...除了本地硬盘,您也可以挂载支持网络文件系统(NFS)协议的卷。卷可能位于文件服务器、网络附加存储(NAS)设备、存储区域网络(SAN)或云提供商的弹性块存储卷上。...如果您有足够的 RAM 和较新的 CPU,极狐GitLab 的速度主要受硬盘驱动器寻道时间的限制。使用高转速(7200 转及以上)或固态驱动器(SSD),可提高极狐GitLab 的响应能力。...如果您的可用内存发生变化,swap 可帮助您减小错误发生的概率。我们也建议您将内核的 swappiness 设置为低值,例如 10,在充分利用 RAM 的同时,使 swap 在需要时可用。...此时你会发现复制ssh地址时是完整且正确的,但是却无法克隆git会告诉我们连接被拒绝。你会惊奇的发现当前ssh监听端口依然为22并没有因为配置文件的修改而改变。

    51410

    GitLab 14 轻量化运行方案

    关闭不需要的服务 建议根据自己情况进行选择处理,下面我将按照如何节约资源的角度去进行描述。...对于个人使用场景,由于没有复杂负载压力,做好备份即可保障数据安全,所以监控和性能基准相关的功能都可以考虑关闭。...此外管理调度的 sidekiq 也可以调低并发,避免不必要的资源浪费。...如果你愿意使用轻量的 Drone 对其进行替换的话,可以考虑将默认的 CI 功能关闭,可以将 CPU 资源消耗降低到非常低的数值。...这也是我们常听到的 GitLab “比较重”的本质原因。 在产品越来越面向 B 端用户,有盈利压力的背景下,相比较开发效率,性能永远是最末端需要考虑的事情。

    4.8K21

    GitLab部署及常用命令

    GitLab社区版是免费的,不但能建立免费的私有仓库而且没有数量上限,参与人员也没有数量限制,还能设置成员的权限,甚至细致到具体某条分支的权限,以及强大的工作流等等。...GitLab官方安装文档:CentOS6.x系统 安装依赖包,并配置postfix服务为GitLab邮件服务 打开HTTP和SSH端口 两种安装源 从官方镜像源安装 添加GitLab仓库并安装到服务器上...logrotate:日志文件管理工具 postgresql:数据库 redis:缓存数据库 sidekiq:用于在后台执行队列任务(异步执行) unicorn:An HTTP server for Rack...修改备份目录 GitLab备份的默认目录是 /var/opt/gitlab/backups ,如果想改备份目录,可修改/etc/gitlab/gitlab.rb: 修改配置后,记得: 备份命令 该命令会在备份目录...停止 unicorn 和 sidekiq ,保证数据库没有新的连接,不会有写数据情况。

    3K11

    GitLab基本操作

    可以管理团队对仓库的访问,它非常易于浏览提交过的版本并提供一个文件历史库。团队成员可以利用内置的简单聊天程序(Wall)进行交流。...GitLab官方安装文档:CentOS6.x系统安装依赖包,并配置postfix服务为GitLab邮件服务复制打开HTTP和SSH端口复制两种安装源从官方镜像源安装添加GitLab仓库并安装到服务器上复制从第三方镜像源安装官方镜像源在国外...sidekiq:用于在后台执行队列任务(异步执行)unicorn:An HTTP server for Rack applications,GitLab Rails应用是托管在这个服务器上面的。...修改备份目录GitLab备份的默认目录是 /var/opt/gitlab/backups ,如果想改备份目录,可修改/etc/gitlab/gitlab.rb:修改配置后,记得:备份命令复制该命令会在备份目录...和 sidekiq ,保证数据库没有新的连接,不会有写数据情况。

    1.2K40

    使用 Mastodon 搭建个人信息平台:调优篇

    ,在处理资源上传和资源展示的逻辑上处理的比较死板。...所以在解决这个问题的时候,我们有两个选择,一个是将补丁打在应用本身,另外一个则是把补丁打在 PaperClip 上。...将补丁打在依赖库上 先来聊聊副作用最小的方式,将补丁打在依赖库上,仅在输出 S3 资源的时候调整资源使用的协议。...在修改完毕之后,将文件挂载回容器,再重启容器,你会发现问题就解决啦。 将补丁打在应用程序上 我们也可以将补丁打在应用本身,一劳永逸的解决问题,不过相比较前者,在性能上会有一丢丢的损失。...不过 Mastodon 官方也好,社区也罢,并没有针对 Mastodon 做服务运行状况检查,所以这里我们针对 Sidekiq 做一个简单的健康检查,保障服务能够在极端情况下自动恢复即可。

    2.4K11

    GitLab部署及常用命令

    GitLab社区版是免费的,不但能建立免费的私有仓库而且没有数量上限,参与人员也没有数量限制,还能设置成员的权限,甚至细致到具体某条分支的权限,以及强大的工作流等等。...postfix服务为GitLab邮件服务 代码语言:javascript 复制 打开HTTP和SSH端口 代码语言:javascript 复制 两种安装源 从官方镜像源安装 添加GitLab仓库并安装到服务器上...logrotate:日志文件管理工具 postgresql:数据库 redis:缓存数据库 sidekiq:用于在后台执行队列任务(异步执行) unicorn:An HTTP server for Rack...修改备份目录 GitLab备份的默认目录是 /var/opt/gitlab/backups ,如果想改备份目录,可修改/etc/gitlab/gitlab.rb: 修改配置后,记得: 备份命令 代码语言...复制 重新加载gitlab配置文件 恢复 备份文件: 停止 unicorn 和 sidekiq ,保证数据库没有新的连接,不会有写数据情况。

    18110

    gitlab版本升级

    # 停止当前gitlab的运行(这步可省略,不停gitlab也可以的,当然如果条件允许,建议还是停下) # gitlab-ctl stop # 拉取最新仓库信息 # apt update # 列出我们要安装的版本...: (pid 15937) 0s ok: run: redis-exporter: (pid 15942) 1s ok: run: registry: (pid 15948) 0s ok: run: sidekiq...从12.10.6升级到12.10.14 这里小版本升级,没有啥大的改动。pg的版本升级我们在上面已做完了。...,但是实际上 打包-->推送到仓库-->发布到K8s 这几步都没做 ​ 解决方法: 清理下对于的项目的CI缓存,然后重跑下CICD即可。...1、从image启动一个备份的gitlab-new ecs实例,挂载磁盘,执行gitlab-ctl restart启动进程 2、将gitlab机器的SLB的后端节点改为gitlab-new 3、内部测试下

    1.9K20

    【Gitlab】371- GitLab从安装到全自动化备份一条龙

    原文地址[1]欢迎star 需求 1.在新服务器上安装并搭建好gitlab2.手动+自动将旧服务器上的gitlab备份3.手动+自动将gitlab备份包scp到新服务器上4.手动+自动恢复新服务器上的...手动恢复新服务器上的gitlab备份包 修改备份文件权限 如果没有修改backups目录的权限,会出现下面问题 ? 贸然恢复,就会出现以下错 ?...自动将旧服务器上的gitlab备份 旧服务器上的/var/opt/gitlab目录 ?...密钥配对 创建authorized_keys文件 当第二步将旧服务器上的id_rsa.pub.A 文件copy到新服务器的目录/root/.ssh ?...,完成了自动将旧服务器上的gitlab备份和自动将gitlab备份包scp到新服务器上 自动恢复新服务器上的gitlab备份包 自动删除过期备份包脚本 cd /var/opt/gitlab sudo touch

    2.4K30
    领券