安全に倒し切るリリースをするために:15年来レガシーシステムのフルリプレイス挑戦記 by さくらい

PHPerKaigi 2025
レギュラートーク(20分)

安全に倒し切るリリースをするために:15年来レガシーシステムのフルリプレイス挑戦記

saku_rye さくらい saku_rye
2

弊チームでは先日、15年来のレガシーシステムを、バグ0でリプレイス&新機能の追加リリースを実施することに成功しました。

その際、オリジナルの検証手法である「ペンギンテスト」をはじめ、シャドーテスト、カナリアリリース、ダークローンチ、フォールトマスキングなど、
多彩な手法を駆使することで、リスクを最小限に抑える「安全に倒し切ったリリース」を実現することができました。

特にチーム発案の「ペンギンテスト」は、本番環境で実際のデータを使いながらもユーザー影響は出さない、
あらゆるパスを網羅した見落としのない検証を実現する有用な手法です。

この「ペンギンテスト」をメインに、どのように予期せぬトラブルを未然に防ぎ、
計画通りのリプレイスを成し遂げたのか、その実践的なプロセスについて詳しく解説します。

他のプロジェクトでも応用可能な知見を共有しますので、レガシーシステムへの手入れを検討している方は必見の内容です。