0

Rails アプリに Yaml ファイルとインターフェイス ページがあり、そのコンテンツを変更します。変更を表示、変更、および保存すると、開発マシンで正常に動作します。しかし、私の懸念は、実稼働環境でアプリを実行している 2 つのノードがある場合、このファイルに加えられた変更をどのように同期するのでしょうか?

その場合、yadayada.yml ファイルの 2 つのコピーがあり、ユーザーが行った変更はそれらの 1 つに保存され、もう 1 つは古い構造のままになると思います。

この種の状況を処理するためのベストプラクティスは何ですか?

PS: yaml の内容は、データベースに保持するのに適したものではありません。

前もってありがとう、乾杯!

4

1 に答える 1

1

共有フォルダーへのシンボリック リンクを作成し、そこに yml ファイルを配置できます。通常の database.yml または他の config.yml ファイルと同様です。

そのようなものを deploy.rb に追加します

task :symlink_yaml_file do
  run "ln -nfs #{shared_path}/config/yml-file.yml #{release_path}/config/yml-file.yml"
end

この結果、通常はすべてのノードが同じファイルで動作するはずです。

于 2013-05-08T10:57:16.787 に答える