2
私はNodejsで1分ごとにエンドポイントを呼び出し、約100000要素のjson配列を取得するアプリケーションを作成しました。私は要素が存在しない場合、この要素をデータベースにアップアップして、 "Point"列の値を0に設定する必要があります。大量のデータを素早く更新する
これまでのところ、私はcronジョブと簡単なupsertクエリを持っています。しかしそれはとても遅いです:
var q = async.queue(function (data, done) {
db.query('INSERT INTO stat(`user`, `user2`, `point`) '+data.values+' ON DUPLICATE KEY UPDATE point=point+ 10',function (err, result) {
if (err) throw err;
});
},100000);
//Cron job here Every 1 minute execute the lines below:
var values='' ;
for (var v=0;v<stats.length;v++) {
values = '("JACK","' + stats[v] + '", 0)';
q.push({values: values});
}
どうすればこのような作業を非常に短時間で行うことができますか? mysqlを間違った判断で使用していますか?私は他のアーキテクチャやソリューションにもオープンしています。私は毎分これをしなければならないことに注意してください。