2017-09-17 2 views
0

Je travaille sur une application IoT, où j'ai un nœud qui conserve une liste des périphériques qui y sont connectés qui se met à jour quand un nouveau message arrive. Pour l'instant j'utilise le contexte pour enregistrer les données, qui sont effacées au redémarrage. En utilisant l'identifiant du nœud, je pourrais sauvegarder la liste sur un fichier JSON global, ou avoir un fichier par nœud, mais je tombe dans un mur quand il s'agit de maintenance.Comment vérifier le fichier ou le répertoire global par rapport à tous les noeuds déployés?

Chaque fois que je supprime un nœud, ses informations sont maintenant perdues. Existe-t-il un meilleur moyen que de simplement vérifier le fichier ou le répertoire global par rapport à tous les nœuds déployés et supprimer ce dont je n'ai pas besoin? Et s'il n'y en a pas, comment puis-je obtenir tous les nœuds actuels?

Répondre

1

Les nœuds ont un rappel close que vous pouvez utiliser pour nettoyer lorsqu'un nœud est supprimé. Les détails peuvent être trouvés here

Il existe 2 versions du rappel, une qui gère les actions asynchrones et une qui ne le fait pas.

this.on('close', function(done) { 
    doSomethingWithACallback(function() { 
     done(); 
    }); 
}); 

et

this.on('close', function() { 
    // tidy up any state 
}); 
+0

Jusqu'à ce que je me souviens quelque chose de nouveau qui ruine ce, il semble être faire le travail. – user2993349