質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
npm

npmは、Node Packaged Modulesの略。Node.jsのライブラリ・パッケージを管理できるツールです。様々なモジュールを簡単にインストールでき、自分でモジュールを作成し公開する際にも使用できます。

Node.js

Node.jsとはGoogleのV8 JavaScriptエンジンを使用しているサーバーサイドのイベント駆動型プログラムです。

Q&A

解決済

2回答

4460閲覧

npmが実行されるまでが遅いので原因を調査したい

okashi123

総合スコア43

npm

npmは、Node Packaged Modulesの略。Node.jsのライブラリ・パッケージを管理できるツールです。様々なモジュールを簡単にインストールでき、自分でモジュールを作成し公開する際にも使用できます。

Node.js

Node.jsとはGoogleのV8 JavaScriptエンジンを使用しているサーバーサイドのイベント駆動型プログラムです。

0グッド

0クリップ

投稿2022/08/08 06:51

前提

npmでnodeの処理を実行した際に処理の起動までに時間がかかってしまうのでその原因を調査したいです
実行ファイルはシンプルな内容でconsole.logを実行するだけのものです
この内容で実行すると出力自体は問題なく成功しますが実行時間が10秒以上かかります

以前に実行したときはもっと速かった記憶があるので、ボトルネックになっている箇所を調査したいのですがどうやって調査したらいいのかわかりません
ご存知の方がいればご教授いただけないでしょうか

//test.js console.log("test")

コマンド

$ npm test

試したこと

各ツールのバージョンを変更してみたりしたのですが特に高速化の様子はありませんでした

補足情報(FW/ツールのバージョンなど)

aws efs
npm : 8.11.0
node : v16.16.0
nvm : 0.34.0

各ツール、ファイルはaws efs上に配置されています

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

npm test

このコマンドはpackage.jsonファイルを確認して、
scriptsキーに入っているtestキーとして記述されている内容を実行するだけです。

npm testを経由して実行されるべき真のコマンドがあって
それの実行を遅いと言ってるわけです。

各ツールのバージョンを変更してみたりしたのですが特に高速化の様子はありませんでした

というわけでこれで改善される事はほぼないでしょう。

各ツール、ファイルはaws efs上に配置されています

AWS EFSが気になったので調べてみました
https://recipe.kc-cloud.jp/archives/11974

「最大 I/O モードのファイルシステムは、ファイル操作のレイテンシーがわずかに長くなる代わりに、より高いレベルの集計スループットと 1 秒あたりの操作にスケールできます。」

なるほど、Dropboxのようなクラウドにファイルを預けて都度syncしてるわけですね。

具体的にどのような形で同期させて使っているのかわかりませんが、
npm testからmocha等のテストツールを起動させて、
それがnode_modulesの中身を確認しながら初期設定を完了させているのだとしたら

1ファイルだと数十ms程度のレイテンシーでも
何十、何百ファイルになれば普通に数秒になるでしょう。
同期を取ったあとでローカルのストレージにあるなら、遅いわけがないのですが

以前npm testでファイルが更新されなくて不具合やデグレ出したから、
npm testの度にファイルの全更新のコマンド挟んだとか?ありえるかも知れん……

まぁ、1ミリしか情報が無い中で憶測でモノを語っても何も解決しないので、
素直にこの仕組作った先輩に相談する方が100倍早く解決できるかと思います。

投稿2022/08/08 07:47

miyabi-sun

総合スコア21158

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

自己解決

解決しました
EFSバーストクレジットの不足によるスループットの低下が原因だったようです

投稿2022/08/09 01:27

okashi123

総合スコア43

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問