Skip to content
Latchkey

symlink swap deploy とは何か?

symlink swap deploy は、各リリースを専用のディレクトリにステージし、稼働中のものを current のような安定した symlink 経由で公開します。リリースとは、その symlink を新しいディレクトリへアトミックに張り替えることであり、これによってアクティブなバージョンが単一の操作で切り替わります。ロールバックは symlink を以前のディレクトリに向けるだけです。

なぜ重要か

symlink の更新はアトミックなので、どのリクエストも部分的にコピーされたリリースを見ることはなく、切り替えは事実上瞬時です。過去のリリースディレクトリをいくつか保持しておけば、ロールバックはほぼゼロコストのポインタ変更になります。トレードオフは、保持するリリースのためのディスク容量と、swap 時にプロセスが新しいパスを確実に拾うようにする配慮です。

関連ガイド