nodejs 사용할 때 많은 양의 데이터처리를 해야 할 때가 있다. node version : v16.15.1 인 경우 Map은 16,777,216까지 데이터 처리가 가능하고, Dictionary 은 112,813,858까지 데이터 처리가 가능하다. 그 이상 값의 대입은 다음 에러가 발생한다.
RangeError: Invalid array length 먼저 Map부터 확인해 보자. Test를 위해 BigMapTest 폴더를 만든 후 간단한 테스트 코드를 짜보자.
BigMapTest % npm init ... 패키지 초기화 후 main.js 파일을 생성해서 다음 코드를 추가한다. let oriMap = new Map(); let maxvalue = 16777216 for (i = 0 ; i < maxvalue; i++) oriMap.set(`${i}`, i) console.log(oriMap.get('16777215')) 실행해 보자.
참고로 --max-old-space-size=18...
#
bigdictionary
#
bigmap
#
bigmapsimple
#
largedictionary
#
nodejsbigdictionary
#
nodejsbigmap
#
nodejsmaxlimit
#
nodejs대용량
원문 링크 : Nodejs Big Map Large Dictionary