2011-07-01 12 views
1

現在私は、私が探している新しい会社のビジネスプランに取り組んでいます。私はこの新しいベンチャーのリーダープログラマーになっています。プロジェクト。Webアプリケーションの動的更新

いったん私が持っていたアイデアが、私がそれを処理する最善の方法で困ってしまったのであれば、クライアントアプリケーションの制御に専念する集中管理サーバーを持つことが考えられます。

基本的に私たちは〜1K Clientのすべてのクライアントアプリケーションをサーバー上で実行しています。システムのパッチを発行すると、メインサーバーは各クライアントに接続し、バージョン、ディスク容量などの基本情報を取得します。それに応じて新しいアップデートをプッシュします。

今、私は単にファイルを上書きするスクリプトを持つことができますが、それはあまりにも非プロだし、それが十分でないので、基本的には私が求めています何であることを知っている:

私が更新するためにそこにあるどのような方法サーバー負荷、バージョン管理、更新履歴などの重要な事実を考慮して〜1Kのクライアントアプリケーション?

私が持っていた考えの1つは、リビジョンを管理するためにGitHubのようなものを使用することですが、それについてどうすればよいかについて大まかには分かりません。

ご迷惑をおかけいたしますが、ご了承ください。

答えて

1

このような状況を処理する最善の方法は、更新メカニズムをクライアントアプリケーション自体に組み込むことだと思います。次に、アップデートが準備できたら、メイン管理サーバをクライアントに接続させ、アップデートが利用可能であることを通知することができます。

クライアントがその時点で何をしているのかを気にせずにサーバーからファイルを上書きするのではなく、各クライアントが更新を取得してインストールすることをお勧めします。

シーケンスは次のようになります:

  1. Serverは、更新が
  2. クライアントはそれが
  3. クライアントをやっていることは取得して、インストール、更新
  4. クライアントがサーバに通知どんなタスク完了可能であることをクライアントに通知しますインストールのステータス(成功/失敗)とインストール中に発生したエラーの一覧
  5. サーバーはインストール情報を何らかの履歴に記録しますy。

(20未満)クライアントのほんの一握りがあったものの、私たちは、私は少し前に働いていたプロジェクトの一つで、この仕組みを利用している - そしてそれは非常によく働きました。

関連する問題