Sidekiqバックグラウンドジョブ
- プラン: Free、Premium、Ultimate
- 提供形態: GitLab Self-Managed
Sidekiqジョブサイズの制限と、cronジョブのスケジュール評価に使用するタイムゾーンを設定します。
前提条件:
- 管理者アクセス権。
これらの設定にアクセスするには、次の手順に従います。
- 右上隅で、管理者を選択します。
- 左サイドバーで、設定 > 設定を選択します。
- Sidekiq Background Jobsを展開します。
ジョブサイズの制限
SidekiqはRedisにジョブを保存します。過剰なRedisメモリ使用量を避けるため、GitLabは次の対応を行います:
- Redisに保存する前に、ジョブの引数を圧縮します。
- 圧縮後に指定されたしきい値制限を超えるジョブは拒否されます。
圧縮のしきい値またはサイズ制限を調整するには、値を更新します。圧縮を無効にするには、Trackモードを選択します。
利用可能な設定
| 設定 | デフォルト | 説明 |
|---|---|---|
| 制限モード | 圧縮 | このモードは、指定されたしきい値でジョブを圧縮し、圧縮後に指定された制限を超えた場合はジョブを拒否します。 |
| Sidekiqジョブ圧縮しきい値(バイト) | 100,000(100 KB) | 引数のサイズがこのしきい値を超えると、Redisに保存される前に圧縮されます。 |
| Sidekiqジョブサイズ制限(バイト) | 0 | 圧縮後にこのサイズを超えるジョブは拒否されます。これにより、Redisでの過剰なメモリ使用が回避され、不安定になることを防ぎます。0に設定すると、ジョブの拒否が無効になります。 |
これらの値を変更したら、Sidekiqを再起動します。
Cronジョブのタイムゾーン
デフォルトでは、GitLabは、cronジョブのスケジュールをインスタンスのタイムゾーン(特に設定されていない場合はUTC)で評価します。異なるタイムゾーンでcronジョブを実行するには、タイムゾーンのオーバーライドを設定します。
タイムゾーンを設定するには:
- Cron jobs time zoneドロップダウンリストからタイムゾーンを選択するか、System defaultを選択してインスタンスのタイムゾーンを使用します。
この値を変更したら、Sidekiqを再起動します。