アカウント名:
パスワード:
Windowsではよくあったので、サービス依存関係を手動で設定したり、プログラム起動前のウェイト時間を設定ファイルに書いておいて、一定秒数待ってから起動とかよくやった
UNIXの場合は、むかしは設定順に起動してたのが、最近のLinuxは、起動時間高速化のために並列で各種デーモンを起動したりてるので、まれにおかしなことになる
起動時間高速化のためのデーモン並列起動は、クラウド業者からの強い要望もある
Aソフトが起動完了したらA'ファイルが作成されるのでそれを待ってBソフトを起動みたいなことをしないと起動順序が前後するから単純なWAITは下策だと思う。# 起動順序が重要な場合は特に。
必ずしもファイルである必要はないけどそのとおりだと思う。ただ問題は「そのソフトが起動完了したらファイルを作る」のような機能を実現する一般的な仕組みが普及していない事だな。そのソフトが落ちたことを検知する(ウォッチドッグ)仕組みもだけど大概のソフトで適用できる一般的な手法ってのが無い。
〇〇に従ったソフトなら△△すれば起動確認・ウォッチドッグ出来るみたいなノウハウはあるこたあるけど。
FLP不可能性というものがあって、文字通り「一般的」な方法はそもそも「実在しない」。
結局トレードオフの問題なので、どこを死守して何処を妥協するかはアプリケーション次第。
いまのLinuxはたいていsystemdじゃないんですか。
Requires/Wantsに入れたけどAfterに入れ忘れているとか?(それなら根気強く探せば見つかるはずだとは思いますが)
あとは複数台サーバーがあって、同期が必要とか?(私はそんなサーバー管理したことないですけど)
systemdにしたら、dhcpからIPアドレスを取得する前にユーザーがログインできるようになってしまった。面倒だから放置。
logindに[Unit]Wants=network-online.targetAfter=network.target network-online.targetとか足せばいいんじゃないかな?(試したことないけど)
Windowsで、起動順を面倒みてくれる仕組みってあるんだっけ?(面倒みてくれるはずなのに上手くいかない事がよくあった、って話だよね。。)
タスクスケジューラ「……」
君は起動のタイミングは指定出来るけど順番(特定タスクが完了後に別タスクを起動)は制御出来んよね。
タスクスケジューラの「トリガー」って結構大量の機能があるのな。イベントを検知してトリガを引く事も出来るから「listen()が無事に開始できたから接続しに来てええで」となったタイミングとか。まあ、そういう作りにしていれば、という話ではあるけども。
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
クラックを法規制強化で止められると思ってる奴は頭がおかしい -- あるアレゲ人
何度も遭遇 (スコア:0)
Windowsではよくあったので、サービス依存関係を手動で設定したり、
プログラム起動前のウェイト時間を設定ファイルに書いておいて、
一定秒数待ってから起動とかよくやった
UNIXの場合は、むかしは設定順に起動してたのが、
最近のLinuxは、起動時間高速化のために並列で各種デーモンを起動したりてるので、
まれにおかしなことになる
起動時間高速化のためのデーモン並列起動は、クラウド業者からの強い要望もある
Re:何度も遭遇 (スコア:1)
Aソフトが起動完了したらA'ファイルが作成されるのでそれを待ってBソフトを起動
みたいなことをしないと起動順序が前後するから単純なWAITは下策だと思う。
# 起動順序が重要な場合は特に。
Re: (スコア:0)
必ずしもファイルである必要はないけどそのとおりだと思う。
ただ問題は「そのソフトが起動完了したらファイルを作る」
のような機能を実現する一般的な仕組みが普及していない事だな。
そのソフトが落ちたことを検知する(ウォッチドッグ)仕組みもだけど
大概のソフトで適用できる一般的な手法ってのが無い。
〇〇に従ったソフトなら△△すれば起動確認・ウォッチドッグ出来る
みたいなノウハウはあるこたあるけど。
Re: (スコア:0)
FLP不可能性というものがあって、文字通り「一般的」な方法はそもそも「実在しない」。
結局トレードオフの問題なので、どこを死守して何処を妥協するかはアプリケーション次第。
Re: (スコア:0)
いまのLinuxはたいていsystemdじゃないんですか。
Re: (スコア:0)
Requires/Wantsに入れたけどAfterに入れ忘れているとか?
(それなら根気強く探せば見つかるはずだとは思いますが)
あとは複数台サーバーがあって、同期が必要とか?
(私はそんなサーバー管理したことないですけど)
Re: (スコア:0)
systemdにしたら、dhcpからIPアドレスを取得する前にユーザーがログインできるようになってしまった。
面倒だから放置。
Re: (スコア:0)
logindに
[Unit]
Wants=network-online.target
After=network.target network-online.target
とか足せばいいんじゃないかな?(試したことないけど)
Re: (スコア:0)
Windowsで、起動順を面倒みてくれる仕組みってあるんだっけ?
(面倒みてくれるはずなのに上手くいかない事がよくあった、って話だよね。。)
Re: (スコア:0)
タスクスケジューラ「……」
Re: (スコア:0)
タスクスケジューラ「……」
君は起動のタイミングは指定出来るけど順番(特定タスクが完了後に別タスクを起動)は制御出来んよね。
Re: (スコア:0)
タスクスケジューラの「トリガー」って結構大量の機能があるのな。
イベントを検知してトリガを引く事も出来るから
「listen()が無事に開始できたから接続しに来てええで」となったタイミングとか。
まあ、そういう作りにしていれば、という話ではあるけども。