Zero Copy๋ฅผ ์•„์‹œ๋‚˜์š”? with kotlin S3 upload

์ฝ”๋“œ๋ ˆ๋ฒจ์—์„œ ํŒŒ์ผ ์ „์†ก ๋“ฑ local storage(e.g. disk)์—์„œ ํŒŒ์ผ์„ ์ฝ์–ด์„œ ์™ธ๋ถ€๋กœ ๋ณด๋‚ด๋Š” ๋กœ์ง์„ ๊ตฌ์„ฑํ–ˆ๋‹ค๋ฉด ์–ด๋–ค ๊ณผ์ •์„ ๊ฑฐ์น˜๊ฒŒ ๋ ๊นŒ์š”?๋ณดํ†ต ํฌ๊ฒŒ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๊ตฌ์กฐ๋ฅผ ๋„๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.1. OS kernel context์—์„œ local storage์— ์žˆ๋Š” ํŒŒ์ผ์„ ์ฝ์–ด Read Buffer์— ๋‹ด๊ณ 2. Application context์—์„œ ํŒŒ์ผ ๋ฐ์ดํ„ฐ๋ฅผ Application Buffer์— ์˜ฌ๋ฆฌ๊ณ  ๋‹ค์‹œ kernel context์˜ Socket Buffer๋กœ ์ „๋‹ฌ3. NIC Buffer๋ฅผ ํ†ตํ•ด ์™ธ๋ถ€๋กœ ์ „์†ก ์—ฌ๊ธฐ์„œ Buffer ๊ฐ„ ์—ฐ๊ฒฐ์— ์ฃผ๋ชฉํ•ด๋ณผ๊นŒ์š”?์œ„์— ํฌ์ปค์Šคํ•œ ๋ถ€๋ถ„์„ ์‚ดํŽด๋ณด๋ฉด Application Buffer์— ๋ฐ์ดํ„ฐ๋ฅผ ํ•œ ๋ฒˆ ๋” ๋ณต์ œํ•˜๋Š” ๊ฑธ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.๊ทผ๋ฐ ์ด ๋ถ€๋ถ„ ๋‚ญ๋น„๊ฐ™์€๋ฐ ์ข€ ํšจ์œจ..

BackEnd 2024. 11. 24. 18:50