「監視して自動で直す仕組み」がないと、24時間は絶対に持たない
配信ソフトは、人間と同じでたまに落ちます。回線の瞬断・メモリ不足・原因不明のクラッシュ。24時間つきっきりで見ているわけにはいかないので、これは避けられない前提として設計するしかありません。
実際に安定運用できるようになった転機は、配信プロセスをずっと見張っていて、落ちたら自動で再起動してくれる「監視役(Watchdog)」を配信の外側に置いたことでした。配信ソフト自身に「がんばって復旧してね」と期待するのではなく、常時起動している別プロセスが配信プロセスを直接の子プロセスとして所有し、生死を監視する構成です。
落ちてから再起動までの検出時間は15秒以内。ここが長いと視聴者が「配信終了」と表示された画面を見て離脱してしまうので、できるだけ短く設計する価値があります。
もう一つ大事なのが「短時間に連続で失敗したときの対応」です。何か根本的な問題(設定ミス・ストリームキーの失効など)が起きている場合、監視役が15秒おきに再起動を繰り返す無限ループに陥ることがあります。そこで、短時間に5回など一定回数連続で失敗したら数分間クールダウン(再起動を一旦見送る)を入れる設計にしたところ、この無限リトライ問題は解消しました。
教訓:「配信を落ちなくする」のではなく「落ちても自動で直す」方に倒す。これが無人運用を成立させる一番の鍵でした。