Je comprends ce qu'est la mise à l'échelle et ce que le module de cluster js du nœud est censé faire en tirant parti des cœurs restants pour améliorer la simultanéité. Mais voici ma question: Si j'ai une certaine fonction à utiliser à 18h par jour, comment puis-je empêcher les 8 travailleurs d'exécuter la fonction 8 fois à 18 heures au lieu d'une fois?Node js module de grappe dilemme
0
A
Répondre
0
Vous pouvez définir un intervalle dans le processus maître et sélectionner un travail aléatoire pour effectuer le travail à chaque fois. Vous pouvez utiliser la fonction worker.send(message)
pour informer le travailleur de la nouvelle tâche.
Une autre méthode consiste à préparer une méthode API exposée par votre application. Cette méthode déclenchera l'exécution de la tâche à la réception. Pour appeler cette méthode API, vous pouvez utiliser un cron standard. De cette façon, votre application sera au courant du travail effectué, mais pas du planning.
J'ai besoin d'un algorithme –
si vous utilisez nodejs en mode cluster alors la requête sera envoyée à un seul processus de travail, il est géré par le worker principal. Je suggère de créer un travail cron au lieu du mode de cluster normal pour faire des travaux périodiques. –
@ Aky_0788 son travail était cron en utilisant le planificateur de noeud –