株式会社TECH LUCKという会社で代表兼エンジニアをしている齊藤です。
Capistranoでデプロイする際にPumaのv4系でゼロダウンタイムを実現するためには、phased_restart
でPumaを再起動させます。
deploy.rb
に以下の記述を行うと実現ができます。
/deploy.rb
set :puma_workers, 2
set :puma_preload_app, false
set :prune_bundler, true
set :puma_phased_restart, true
参考記事