我正在使用第三方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.
}如何进行优化?
有什么帮助吗?
发布于 2020-09-29 12:06:37
假设每条记录查询6次(假设有100条记录)。所以,你询问了600次。
我假设每个记录都有一个唯一的id。
query.
await odd_records.count()看起来是常量值。
它将把查询数量减少到6个。
https://stackoverflow.com/questions/64119155
复制相似问题