一般に、接続を開くことはコストのかかる操作であるため、最新のベストプラクティスは接続を開いたままにすることです。一方、開いている接続は管理するために(データベースからの)リソースを必要とするため、多くのアイドル状態の接続を開いたままにしておくことも問題になる可能性があります。このトレードオフは通常、接続プールを使用することで解決されます。
そうは言っても、もっと興味深いのは、なぜPHPがセグメンテーション違反を起こすのかということです。タイムアウトは、明らかに、Redis(ほとんどがシングルスレッド)がPHPアプリの接続に参加するのをブロックする長時間実行コマンド(この場合はCLIスクリプト)が原因で発生します。これはよく知られているRedisの動作ですが、PHP(クライアントライブラリでの再接続機能を備えていないイベント)では、それほど悲惨なことはしないと思います。