【问题标题】:Cron cluster with one Redis instance and multiple server roles具有一个 Redis 实例和多个服务器角色的 Cron 集群
【发布时间】:2020-07-11 03:37:46
【问题描述】:

我正在尝试使用 cron-clusterredis 在 Node.js 上。我们正在运行具有不同角色(生产、登台、测试)和相同代码库的多台服务器。它们都连接到同一个 Redis 实例。

如何让cron-cluster 在每个角色上只运行一次? 目前,它只在整个机队(生产、登台、测试)中选择一台服务器并在那里运行所有内容。

【问题讨论】:

    标签: node.js redis cron


    【解决方案1】:

    cron-cluster 库也有同样的问题。 要解决它,您应该在初始化实例时传递一个唯一键。例如:

    const ClusterCronJob = require('cron-cluster')(redisClient, { key: leaderKey }).CronJob;
    

    其中{ key: leaderKey }可以取如下:

    const leaderKey = process.env.NODE_ENV; 
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-03-27
      相关资源
      最近更新 更多