3

NodeJS & Linux ENOENTED 私。私はファイルがそこにあることを知っています、私はそこにそれを見ることができます。

アプリケーションは、Jenkins CI サーバーによってサーバーにデプロイされます。NodeJS バージョン: v4.3.1- prod、v4.3.2- dev。ExpressJS フレームワークを使用します。

単一の構成のようなファイルを複数回使用し (古いアプリ ロジック)、そのプロセスを最適化したいと考えていました。私はクラスターを使用しているので、何度もロードするのではなく、プロセスを最適化し、そのファイルの変更を監視しましょう (7.4KB の重量があります)。

そのため、エクスプレスアプリの外側で、 setInterval を使用して(良いアイデアではないかもしれません)、最後の1時間以降に構成が変更されたかどうかを確認しました。

開発サーバーでは、すべてがスムーズに進みました。本番環境では、まあ (平均負荷 ~ 20 req/sec ) も近くありません。

起動時に 2 つのファイルを同期的にロードしますが、その 7.4KB ファイルは、彼が存在することを確認する他の構成ファイルと一緒に展開されたにもかかわらず、彼がそこにいない (ENOENT) と主張します。

最初は、シンボリックリンクと関係があると思いました。しかし、それは問題ではないようです。それは Publish Over SSH プラグインの場合ですか?

そのためのより良い方法があるかどうか (時間間隔でファイルの変更を監視する) と、その奇妙な動作を引き起こす可能性のある readFile と symlink に関する問題があったかどうかを知りたいです。

回答をお待ちしております。ありがとう。

2016 年 6 月 19 日更新

サンプルの留守番電話アプリで plunkr にリンクします。これは別のユース ケースの例ですが、私がそのアプリに実装したものと似ています。

https://plnkr.co/edit/LJUBiyFLcvXD0AbpC1G3?p=カタログ

4

0 に答える 0