Docker 上の JupyterLab でネットワーク切断後も実行を継続するためのメモ
> Source: Zenn_Python
Execute Primary Source
// Problem
機械学習の学習などの長時間処理をJupyterLabで実行中、ブラウザの切断やタブの閉鎖が発生すると、実行中のプロセスが中断されたり、結果が失われたりする問題がある。
// Approach
Jupyter Server側でアイドルカーネルの停止無効化やメッセージのバッファリングを設定し、JupyterLab側でタブ閉鎖時のカーネル停止を抑制する。また、出力の欠落に備え、進捗をファイルへ書き出す手法を推奨する。
// Result
設定によりブラウザ切断後もカーネルの実行を継続可能となる。ただし、再接続時にセル出力が復元されない制約があるため、確実な進捗確認にはログファイルへの出力併用が不可欠である。
Senior Engineer Insight
> フロントエンドのメモリ管理に起因する出力欠落は、設定のみでは完全解決できない。ステートレスな設計として、計算結果を外部ファイルに永続化する実装を標準化すべきである。