features:
  secondary:
    - name: "Reduced memory consumption of GitLab with Puma"
      available_in: [core, starter, premium, ultimate]
      gitlab_com: false
      documentation_link: 'https://docs.gitlab.com/omnibus/settings/puma.html'
      reporter: joshlambert
      stage: enablement
      categories:
        - 'Omnibus Package'
      epic_url: 'https://gitlab.com/groups/gitlab-org/-/epics/954'
      description: |
        GitLab is switching application servers from [Unicorn](https://en.wikipedia.org/wiki/Unicorn_(web_server)) to [Puma](https://puma.io), reducing the memory footprint of GitLab by 40%. This improved efficiency can allow GitLab administrators to leverage smaller memory instances, reducing the operational costs of the service. These savings are achieved due to leveraging the multi-threading support in Puma, compared to the single-threaded model of Unicorn.

        Puma support is [generally available](https://docs.gitlab.com/omnibus/settings/puma.html) in Omnibus, and [experimental](https://docs.gitlab.com/charts/charts/gitlab/unicorn/index.html#webserver-options) in the Helm chart. We plan to make Puma the default application server in GitLab 13.0.
