2016-05-12 5 views
1

私はDebianホームサーバーで24時間稼働するNode.jsデーモンアプリケーションを持っています。Node.jsアプリケーションの外部トリガーの処理

モーションによって生成されたトリガを処理したいと思います。このプログラムは、同じマシンにインストールされているカメラからのビデオ信号を監視します。 動きは、動きが検出されたときやカメラの接続が失われたときなど、特定のイベントに対してコマンドを実行できます。

私は、これらのイベントを処理し、データベースに、私は継続的にデータベースをポーリングすることができ、私のデーモンにそれらを記録するスクリプトを書くことができます。しかし、それは非常に非効率的でしょうか?

は何のNode.jsアプリケーションで外部トリガを処理するために最適な方法でしょうか?

答えて

0

dnodeを見てください。それはあなたが探しているものを正確に行うことができます。あなたのデーモンで

あなたはこのような何かを持っています。あなたはその後、モーションがある場合が、私は実際には、コールバック、ちょうど*火を必要とNode.jsのプロセスに*スタイルのメッセージを忘れないでください

var dnode = require('dnode'); 

var d = dnode.connect(5004); 
d.on('remote', function (remote) { 

    var eventDataToSend = {} 

    remote.transform(eventDataToSend, function (s) { 
     //Do stuff with arguments sent back from the callback on the server 
    }); 
}); 
+0

を呼び出すコマンドを作成する必要があります

var dnode = require('dnode'); var server = dnode({ transform : function (eventObject, cb) { //handle the event cb(callbackDataHere) } }); server.listen(5004); 

私はそれが収まるコールバックを省略することができます。実のところ、同僚は私にUNIXソケットの使用を勧めましたが、これが正しい使用例であることは確信できません。どう思いますか? – heuels

+0

あなたは効果的にUNIXソケットを使用しています。ノードとUnixソケットについての詳細はこちらhttps://nodejs.org/api/net.html#net_server_listen_path_backlog_callback – RedJandal

+0

ありがとう、私はそれを調べます。 – heuels

関連する問題