0

くだらないタイトルでごめんなさい。

毎日変更される製品画像(約55,000、年間約1000ずつ増加)のリポジトリがあります(毎日最大100の画像が追加、変更、削除されます)。

上記の変更を行うには、3人が必要です(ディレクトリの読み取り/書き込みができるようにするため)。それらはすべてWindowsVistaPCを使用します。

また、ベンダーが毎日変更を最新の状態に保つことができるように、イメージをホストできる必要があります。約100のベンダーがあります。

私が今実装しようと考えているシステムには、Subversionの使用が含まれます。

トランクにはイメージがあります(複数のディレクトリとサブディレクトリに分割されています)。3人はローカルマシンで作業コピーを持っているので、必要な変更を加えることができ、競合について心配する必要はありません。さらに、誰もがリポジトリを簡単に最新の状態に保つことができます(バージョン管理とバックアップの明らかな利点は言うまでもありません)。

ベンダーが変更をチェックアウトすることしかできないように、トランクへのパブリックな読み取り専用URLを用意します。リポジトリをチェックアウトし、cronを設定してリポジトリを毎日更新する方法を説明できるので、これは良いことです。したがって、常に最新の状態になります。

すべてのベンダーは、サーバー上でcronジョブとsvnリポジトリをセットアップするのに十分な技術的専門知識を持っています。

これはすべて少しハッキーな感じがします(ハック用に設計されていないものを使おうとするといつでも考えます)。

私の質問は、誰かがこのソリューションの欠点を見ていますか?私がやろうとしていることにもっと良いかもしれない他の解決策はありますか?

ドロップボックスを使用してこれらすべてのサーバー間で同期することを検討しましたが、ベンダーが変更を加えられるようにしたくありません。

私の目標は次のとおりです。

  1. デザイナーのメンテナンスを簡単にします。
  2. ベンダー向けの1回限りのセットアップで、ベンダーは常に最新のイメージを使用できます。
  3. 危機が発生した場合に備えて、適切なバックアップ/復元およびロールバックシステムを導入する。
4

2 に答える 2

1

あなたのソリューションはどれも良いようです。必要なのは、サーバーからクライアントに画像を取得する小さなクライアント スクリプトだけです。

私が本当に好きではない唯一のことは、画像を保持するために転覆を使用することです。動作しますが、すべての変更はデルタとして保存されるのではなく、完全な新しいファイルとして保存されます。これはあなたにとって問題ではないかもしれません。

また、 を使用するrsyncと、変更されたファイルのみを簡単に転送できるため、帯域幅を節約できます。また、転送に SSH を使用することを検討する必要がある場合もあります。

もう 1 つ、同期スクリプトをクライアント全体で 1 日の異なる時間帯にスケジュールして、負荷を均一にし、より高速に見えるようにすることもできます。

于 2010-02-25T19:12:52.063 に答える
1

あなたのソリューションは全体的に理にかなっていますが、リポジトリのサイズに関する懸念は多くの画像で共有されています。あるレベルでは、特に画像を対象としたコンテンツ管理システムの方が理にかなっているかもしれません (ただし、推奨するものはわかりません)。

ただし、変更をお勧めすることの 1 つは、ベンダーが実際にファイルを編集/コミットできるようにする必要がない限り、スケジュールされたジョブを設定してファイル システムにエクスポートすることを検討することをお勧めします (FTP/HTTP/etc 経由で利用可能になります)。 )。ベンダーにチェックアウトを実行させるということは、代わりに作業コピーのすべてのオーバーヘッドが発生することを意味します。(その後、「これらすべての .svn ディレクトリとこれらの他のファイルは何ですか?」という質問に対処することになります)

于 2010-03-02T15:12:01.533 に答える