Node: getHeapStatistics์˜ heap_size_limit ์†์„ฑ์ด 4032MB ์ด์ƒ์˜ ๋ฉ”๋ชจ๋ฆฌ์— ๋Œ€ํ•ด ์˜ฌ๋ฐ”๋ฅด์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

์— ๋งŒ๋“  2016๋…„ 12์›” 08์ผ  ยท  1๋…ผํ‰  ยท  ์ถœ์ฒ˜: nodejs/node

  • ๋ฒ„์ „ : 7.2.1
  • ํ”Œ๋žซํผ : Linux 3.10.0-327.10.1.el7.x86_64 #1 SMP Tue 2์›” 16์ผ 17:03:50 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
  • ์„œ๋ธŒ์‹œ์Šคํ…œ : v8


v8 ๋ชจ๋“ˆ์˜ getHeapStatistics ํ•จ์ˆ˜๋ฅผ ํ˜ธ์ถœํ•  ๋•Œ heap_size_limit ์†์„ฑ์ด 4GB ์ด์ƒ์œผ๋กœ ์„ค์ •๋œ ๋ฉ”๋ชจ๋ฆฌ ํฌ๊ธฐ์— ๋Œ€ํ•ด ์˜ฌ๋ฐ”๋ฅด์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ํŠนํžˆ max_old_space >= 4032๋กœ ์„ค์ •ํ•˜๋ฉด heap_size_limit๊ฐ€ ์˜ฌ๋ฐ”๋ฅด์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์žฌํ˜„ํ•˜๋ ค๋ฉด:

๋…ธ๋“œ --max_old_space_size=3072

require('v8').getHeapStatistics().heap_size_limit
3288334336

์ด๊ฒƒ์€ ์˜ˆ์ƒ๋Œ€๋กœ์ด์ง€๋งŒ 4096์ด ํ•˜๋Š” ์ผ์„ ๋ณด์‹ญ์‹œ์˜ค.

๋…ธ๋“œ --max_old_space_size=4096

require('v8').getHeapStatistics().heap_size_limit
67108864

64MB???? ๊ทธ๊ฑด ์•„๋‹ˆ์ง€. ๋ช‡ ๋ฒˆ์˜ ์‹œํ–‰์ฐฉ์˜ค ๋์— ๋งˆ๋ฒ•์˜ ํ•œ๊ณ„์ ์€ 4032์ž…๋‹ˆ๋‹ค.

๋…ธ๋“œ --max_old_space_size=4032

require('v8').getHeapStatistics().heap_size_limit
0

4092๋กœ ์„ค์ •๋œ ๊ฒฝ์šฐ ํž™ ํฌ๊ธฐ๊ฐ€ ZERO์ž…๋‹ˆ๋‹ค.

์ด๊ฒƒ์€ Mac OS X 10.11.6 ๋ฐ Node v5.11.0์—์„œ๋„ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.

V8 Engine process

๊ฐ€์žฅ ์œ ์šฉํ•œ ๋Œ“๊ธ€

>๋ชจ๋“  ๋Œ“๊ธ€

์ด ํŽ˜์ด์ง€๊ฐ€ ๋„์›€์ด ๋˜์—ˆ๋‚˜์š”?
0 / 5 - 0 ๋“ฑ๊ธ‰