博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
感恩节快乐,PM2小窍门致NodeJS开发者!
阅读量:7211 次
发布时间:2019-06-29

本文共 596 字,大约阅读时间需要 1 分钟。

最近从数仓跑定时任务拉取数据时遇到一个问题,pm2以cluster模式运行,高并发访问Hive数据表会直接被拒绝连接。

那么怎么解决这个问题呢?有两种方案:

一种是再起一个单进程独立执行定时任务,

另一种是cluster模式仅执行一次定时任务。

在PM2的文档上有这么一段话,这不恰好能解决我们的问题吗?

而且特别举例说明了定时任务的应用场景。

Cluster environment variablelink

The NODE_APP_INSTANCE environment variable is used to make a difference between cluster.

For example, if you want to run a cronjob only on one cluster, you can check if process.env.NODE_APP_INSTANCE === 0.

代码如下,是不是很简单呢?

if (process.env.NODE_APP_INSTANCE === '0') {     // 定时任务}复制代码

本文参考:

PM2文档 https://pm2.io/doc/en/runtime/guide/load-balancing/#cluster-environment-variable

本文作者:

黑马大前端 崔天泽

转载地址:http://lzgum.baihongyu.com/

你可能感兴趣的文章
开始OpenCV之旅
查看>>
解决github.com/mattn/go-sqlite3 驱动中的utc时区变为本地系统时...
查看>>
Fabric.js高级点的教程1--添加辅助线的方法
查看>>
2011年 Linux 故事 Top 5
查看>>
ARouter 源码历险记 (五)
查看>>
优化Angular应用的性能
查看>>
php字符串函数
查看>>
[IOS] 自颁发证书不合法问题
查看>>
MYSQL常用命令
查看>>
Java中使用Jedis操作Redis
查看>>
play2.0实现新浪OAuth2.0
查看>>
QT:使用“状态模式”绘制界面 参考的一种面向对象的绘制图片的方法
查看>>
for 循环 里面 save 的问题
查看>>
常用 arm 汇编指令
查看>>
如何用_R_语言的_Shiny_库编写_web_程序
查看>>
mysql初步入门
查看>>
你对C++语言的理解到了哪一步呢
查看>>
JEECMS中FreeMarker的Macro
查看>>
高性能JavaScript(您值得一看)
查看>>
工作记录
查看>>