18

Node.js を使用して、更新プログラムを定期的にチェックし、存在する場合はインストールするアプリケーションを作成したいと考えています。

基本的なコンポーネントは私には明らかです。

  • 更新パッケージを含む Web サーバー (または FTP サーバー、ファイル システムなど)
  • どのパッケージが新しいかを判断できるバージョン システム (SemVer など)
  • 更新パッケージに署名するための公開鍵アルゴリズム

次に、更新を確認して更新をインストールするタイミングについて、さまざまな戦略がある場合があります。

  • アプリ起動時
  • 申し込み終了時
  • アイドリング時

アプリケーションが強制的にシャットダウンされ、自動的に再起動されることさえあります。

しかし、いくつかの疑問が残っています:

  • そのようなシステムをすでに提供している利用可能な npm のモジュールはありますか?
  • ファイルシステムで異なるバージョンを整理する方法は? 基本的に、ホストと複数の (バージョン管理された) コアが必要です。それらすべてに対して1 つのdataフォルダが必要ですか?
  • npm install&co.の扱い方 新しくダウンロードしたパッケージの場合?
  • 更新が壊れた場合の対処方法
  • Heroku & co と互換性があるように、どのように実装できますか。車で移動できる常設ドライブがない場所はどこですか?

一般的に: このようなシステムをどのように実現しようとしますか?

4

4 に答える 4

4

まず、パッケージとアプリの配信に NPM 自体を使用できます。次に、定期的な更新プロセスのために、スクリプト ファイルを追加して、package.json ファイルに cron ジョブを追加することができます (たとえば、'postinstall' または 'update')。このスクリプトでは、破損した更新など、必要なものをすべて確認できます。Heroku では、更新処理に Scheduler Worker を使用できます。

于 2012-12-22T21:21:18.000 に答える