[英]Node.js writing to array without blocking
我是Node的新手,不勝感激有關寫入數組的一些建議。 我有高頻實時數據輸入,每個刻度都將寫入單個數組。
以異步方式執行此操作是否有益? 如果是這樣,該怎么辦?
這是我的代碼的精簡片段。 收到新的報價后,將調用“過濾器”功能。 然后,“ storeWindowData”函數保存到數組。 我認為這在高負載下可能會阻塞?
感謝任何評論。
問候,本。
var window_data = [];
module.exports = {
filter: function (data) {
this.storeWindowData(timestamp, ticker, content);
}
},
storeWindowData: function(timestamp, ticker, content){
// Check if we have seen this ticker before for this minute
if(window_data[timestamp] !== undefined && window_data[timestamp][0] !== undefined && window_data[timestamp][0] === ticker){
window_data[timestamp][1] = window_data[timestamp][1] + ',' + content;
} else {
window_data[timestamp] = [ticker, content];
}
}
};
數組是內存中的原語(嗯,是內置類型,不是特別原始)。
在JavaScript級別上,您究竟如何異步寫入?
等待寫入時將其暫時存儲在哪里? 第二個數組? (看到問題嗎?寫入該陣列將導致兩次寫入陣列,這將是速度的兩倍。)
您將不得不確定一個不同的瓶頸,或者如果這確實是問題所在(我非常非常確定這不是問題),或者您的計算機處理此問題的能力太弱,或者您的數據異常高傳入的數據量。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.