我有一个场景,我使用nodejs中的node-cron库每1天发送一次电子邮件。服务器托管在GKE中,有三个节点。但是我每天收到3封电子邮件,我相信是从运行同一个预定函数的3个不同节点发送的。我如何克服这个问题,使我只从一个节点收到电子邮件?我尝试使用cluster包
node-cron
cluster
if(cluster.isMaster){ initScheduleFunctions() }
在我的index.js.
xuo3flqw1#
因此,您当前的部署有3个副本:
apiVersion: apps/v1 kind: Deployment metadata: null name: backend-deploy spec: null replicas: 3 selector: null matchLabels: null app: app template: metadata: null labels: app: app spec: containers: - image: 'gcr.io/vektor-dev-351106/vektor-pm-be:latest' name: vektor-be imagePullPolicy: Always ports: - containerPort: 4000
如果要继续将作业作为部署运行,只需将复制副本修改为1:
apiVersion: apps/v1 kind: Deployment metadata: null name: backend-deploy spec: null replicas: 1 selector: null matchLabels: null app: app template: metadata: null labels: app: app spec: containers: - image: 'gcr.io/vektor-dev-351106/vektor-pm-be:latest' name: vektor-be imagePullPolicy: Always ports: - containerPort: 4000
1条答案
按热度按时间xuo3flqw1#
因此,您当前的部署有3个副本:
如果要继续将作业作为部署运行,只需将复制副本修改为1: