ARMボードで複数のコマンドを実行するスクリプトがあります。同時に起動するスクリプトインスタンスは多数あり、一度に15〜20個までです。これにより、1)ハードウェアがかなり遅いために大きな遅延が発生します。2)MaxSessions
またはMaxStartups
制限によりSSH接続が切断されます。
ssh接続を何らかの方法でARMにキューイングして、すべてが単一の接続を使用するようにすることは可能ですか?
私はしたくないいくつかの理由にARMのsshdの設定を編集するために、これは主な制限、問題の原因があります。
ただし、スクリプトは通常、すべてのコマンドを連続して実行します。並列で実行している場合、それはスクリプトが意図的に並列化しているからではなく、何かを追加しようとする代わりにそれを削除する必要があるということですか?
—
grawity
@grawity同意します。ただし、問題のスクリプトは、マルチスレッドC ++ビルドプロセス中に開始される単体テストランナーです。理論的には、おそらくビルドシステムをキューに入れることができますが、ここからは、「ユニットテストを並行して実行するべきではありません」というよりも、「ホストXが遅いため、接続をキューに入れる必要がある」と思われます。しかし、私は間違っているかもしれません。
—
アルタラス
exec 3<> /tmp/arm-test-${arm_ip}; flock 3
。しかし、より良い方法があるはずだと感じています。