Skip to content
代码片段 群组 项目
该项目从 https://gitlab.com/gitlab-org/gitlab.git 镜像。 拉取镜像更新于
  1. 12月 06, 2022
    • Sean McGivern's avatar
      Exit with failure code when sidekiq-cluster child process fails · 49136d0c
      Sean McGivern 创作于
      sidekiq-cluster handles process supervision for its child Sidekiq
      processes, and terminates itself and all child processes if any child
      Sidekiq process exits.
      
      Previously, it always exited with a 0 status code (i.e. success), no
      matter how the child process had terminated.
      
      Now it exits with 1 if any child process had a non-zero exit code. This
      allows a process supervisor one level up (like systemd) to detect
      failures and restart.
      
      Changelog: changed
      49136d0c
  2. 12月 02, 2022
  3. 3月 15, 2022
  4. 2月 21, 2022
  5. 12月 08, 2021
  6. 11月 17, 2021
  7. 11月 08, 2021
  8. 12月 15, 2020
  9. 8月 05, 2020
  10. 3月 24, 2020
    • Oswaldo Ferreira's avatar
      Support graceful timeout for Sidekiq Cluster processes · 887cab1a
      Oswaldo Ferreira 创作于
      Considering we're moving towards using Sidekiq Cluster
      only and customers using Omnibus are allowed to configure
      a Sidekiq timeout through -t flag, here we support a
      -t flag for `bin/sidekiq-cluster`.
      
      Here's how it works:
      
      Internally, we'll pass the given value to Sidekiq (`-t`) flag.
      For whatever value given, Sidekiq Cluster will wait for 5
      extra seconds in order to hard stop all remaining alive processes.
      
      So for instance, if `10` is given, Sidekiq will try to gracefully
      terminate within this time. If it gets stuck for some reason, the
      processes will be sigkilled within `15` seconds (total wait time).
      887cab1a
  11. 3月 20, 2020
  12. 3月 11, 2020
  13. 3月 06, 2020
    • Sean McGivern's avatar
      Allow selecting all queues with sidekiq-cluster · d1af35d2
      Sean McGivern 创作于
      Because it was designed for selecting specific queues, sidekiq-cluster
      didn't have a convenient method to select all queues. As we want this to
      become the default sidekiq entry point for all GitLab installations, and
      the default is to handle all queues in a single process, we need that
      option.
      
      (This was possible before: using `--experimental-queue-selector`, you
      could ask for something like `has_external_dependencies=true,false`, but
      that's not obvious.)
      
      Instead of making `*` a wildcard anywhere, which would be more general,
      this commit just allows a single `*` in a queue group to represent all
      queues. While this is less general, it's also simpler to implement, and
      we can assume that YAGNI for the wildcards.
      d1af35d2
  14. 1月 22, 2020
    • Sean McGivern's avatar
      Add --min-concurrency to sidekiq-cluster · 8e6c0c0e
      Sean McGivern 创作于
      Allow setting a minimum concurrency for sidekiq-cluster, as well as the
      existing maximum. These can be set to the same value to enforce
      concurrency at a particular number of threads, regardless of the number
      of queues in the group.
      8e6c0c0e
  15. 1月 09, 2020
  16. 10月 22, 2019
    • Matthias Käppler's avatar
      More fine-grained metrics for sidekiq workers · 73b14405
      Matthias Käppler 创作于
      We currently only measure the global (node-level) business in terms
      of jobs being processed. We would instead like to be able to know
      for each sidekiq process how saturated it is in terms of actual
      concurrency vs requested/max concurrency.
      
      This patch does the following:
      
      - add a worker/process dimension to all existing metrics
      - introduce a new metric to observe concurrency per process
      
      by relating "actual job count per process" to "max job count per
      process" we can then obtain some sort of saturation metric.
      73b14405
  17. 3月 01, 2019
  18. 1月 08, 2019
  19. 11月 20, 2018
  20. 8月 29, 2018
    • Stan Hu's avatar
      Limit sidekiq-cluster concurrency to a maximum of 50 by default · 73218620
      Stan Hu 创作于
      By default, sidekiq-cluster will allocate N threads for N queues specified
      on the command line, which in turn will require N + 5 Redis connections.
      Especially when used with the `--negate` flag, this can lead to using hundreds
      of Redis connections, which can lead to performance issues.
      
      This change also adds a `-m N` option to cap the number of threads. For each
      queue group, the concurrency factor will be set to min(number of queues, N).
      
      Closes #7374
      73218620
  21. 7月 09, 2018
  22. 1月 30, 2018
  23. 12月 05, 2017
  24. 2月 23, 2017
  25. 1月 25, 2017
  26. 12月 21, 2016
    • Yorick Peterse's avatar
      Support require directory for sidekiq-cluster · 003d04f4
      Yorick Peterse 创作于
      sidekiq-cluster now supports the same -r/--require option as Sidekiq
      itself does. This is needed as Omnibus changes the working directory,
      preventing us from properly starting the sidekiq processes.
      003d04f4
    • Yorick Peterse's avatar
      Redirect sidekiq output to sidekiq-cluster · 70a4e8dc
      Yorick Peterse 创作于
      This redirects STDERR and STDOUT of the various Sidekiq processes to the
      sidekiq-cluster process. The logging output of sidekiq-cluster itself
      has been changed so it matches Sidekiq's output more closely, making
      parsing/grepping easier.
      
      Fixes #1438
      70a4e8dc
  27. 12月 20, 2016
    • Yorick Peterse's avatar
      Ability to start dedicated Sidekiq processes · b588a0c4
      Yorick Peterse 创作于
      These processes are managed by ./bin/sidekiq-cluster. This script can
      start multiple Sidekiq processes processing a dedicated list of queues.
      Signals sent to the wrapper are forwarded to the underlying Sidekiq
      processes.
      b588a0c4
加载中