2016-04-26 5 views
-1

私のサービスが起動してからx分ごとに実行したいインターバル機能があります。私は私のアプリケーションjsファイルに置く場合、それは私のサーバーへのリクエストが完了した後にのみ呼び出されます(私はそれがアプリケーションjsで実行され、関数を呼び出すと思います)これを行うにはこれは正しい方法ですか?私のサーバーへの別のリクエストが完了したら、私の機能を再度呼び出すでしょうか?開始時にノードjs関数を呼び出す

+1

はあなたには、いくつかのコード例を提供することはできますか? – mfrachet

+1

私はあなたが達成しようとしていることを確信していませんが、私はそれをしないことを提案します。代わりに、ジョブスケジューラを試してみてください。あなたはその仕事をより良くコントロールするでしょう。 –

+0

あなたが話していること、および/またはそれを最もうまく達成する方法を理解するには、コードを参照する必要があります。常に関連するコードを含めてください。 – jfriend00

答えて

1

あなたはこのような何かをした場合:その後のsetInterval関数が10の要求があった場合、その後走り回っ10インターバル機能が存在しますので、サーバーへの要求があるたびに呼び出されます

requestHandlerFunction(req,res){ 
    setIntervalFunctionSetup(); 
} 

これには複数の解決策がありますが、最も簡単な方法は、service.listen()関数呼び出しの後にsetInterval関数を呼び出す方法です。

たとえば

あなたはウェブサーバのような、それはこのようになります表現している場合:

var express = require('express'); 
var app = express(); 

app.get('/', function (req, res) { 
    res.send('Hello World!'); 
}); 

app.listen(3000, function() { 
    setInterval(function setIntervalCallback(){ 
     //do something every 10 sec 
    }, 10000); 
}); 
関連する問題