[英]Node JS - Sequelize Too many connections - CPU usage 100%
我正在使用第三方 websocket 連接。 Websocket 發送數組長度為 100+ 的數據。 所以我必須將每條記錄檢查到數據庫表中以進行一些計算(必需)。
可能在這個循環中它導致內存和高 CPU 使用率。
我的數據庫配置。
const sequelize = new Sequelize(DB_NAME, DB_USER, DB_PASSWORD, {
dialect: 'mysql',
host: DB_HOST,
port: DB_PORT,
logging: false,
dialectOptions: {
// useUTC: true
},
timezone: '+00:00',
pool: {
max: 500,
min: 0,
idle: 10000,
// @note https://github.com/sequelize/sequelize/issues/8133#issuecomment-359993057
acquire: 100*1000,
}
});
一圈代碼:
for(const theOdd of records) {
await odd_records.count() // First query
await matches.findOne() //Second query
.
.
.
//End with 5-6 queries for each row.
}
如何優化?
有什么幫助嗎?
假設您要為每條記錄查詢 6 次(假設有 100 條記錄)。 因此,您查詢了 600 次。
我假設每條記錄都存在一個唯一的 ID。
await odd_records.count()
對我來說看起來是恆定的值。它將把查詢的數量減少到 6 個。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.