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
์šฐ๋ฆฌ ์„œ๋ฒ„์— OOMKilled ์žฅ์• ๊ฐ€ ๋ฐœ์ƒํ–ˆ์–ด์š” - ํšŒ๊ณ ํŽธ

์ด ๊ธ€์€ ์ตœ๊ทผ์— ์žˆ์—ˆ๋˜ ์„œ๋ฒ„ OOMKilled ์žฅ์•  ๊ณผ์ •์„ ๊ธฐ๋ก ๋ฐ ๊ณต์œ ํ•˜๋ฉฐ ํšŒ๊ณ ํ•˜๋Š” ๊ธ€์ž…๋‹ˆ๋‹ค.๋˜ํ•œ ์ด ๊ธ€์€ ์ธํ”„๋ผ ๋ ˆ๋ฒจ(cpu, memory)์—์„œ์˜ ์žฅ์•  ๊ฐ์ง€ ๋ฐ ๋Œ€์‘ ํ”„๋กœ์„ธ์Šค์— ๊ด€ํ•œ ๋‚ด์šฉ์„ ๊ธฐ๋กํ•˜๊ธฐ ๋•Œ๋ฌธ์— NPE(Null Point Exception) ๊ฐ™์€ ์ฝ”๋“œ ๋ ˆ๋ฒจ์—์„œ์˜ ๋ช…ํ™•ํ•˜๊ณ  ๋‹จ์ˆœํ•œ ๋ฌธ์ œ๋Š” ํฌ๊ฒŒ ๋‹ค๋ฃจ์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์—ฌ๋Ÿฌ๋ถ„๋“ค์€ ์„œ๋ฒ„์˜ ๋ฉ”๋ชจ๋ฆฌ๊ฐ€ ๋ถ€์กฑํ•ด OOMKilled ์žฅ์•  ๋ฐœ์ƒ ์‹œ ์–ด๋–ป๊ฒŒ ๋Œ€์‘ํ•˜์‹œ๋‚˜์š”?์ €๋Š” ๋ณดํ†ต ๋‹ค์Œ๊ณผ ๊ฐ™์€ ํ”„๋กœ์„ธ์Šค๋กœ ๋Œ€์‘ํ•ฉ๋‹ˆ๋‹ค.1. ์žฅ์•  ๊ฐ์ง€2. ์˜ˆ์ƒ๋˜๋Š” ์›์ธ ๋ฒ”์œ„๋ฅผ ํ•ฉ๋ฆฌ์ ์œผ๋กœ ์ฐพ๊ณ  ๊ฐ€์„ค์„ ์„ธ์šด๋‹ค. (๊ฐ€์„ค ์ˆ˜๋ฆฝ)3. ๊ฐ€์„ค์„ ๊ฒ€์ฆํ•˜๊ธฐ ์œ„ํ•ด APM, log ๋“ฑ ๋‹จ์„œ๋“ค์„ ์ฐพ๊ณ  ๊ฐ€์„ค์„ ํ™•์ธํ•˜๊ณ  ์›์ธ ๋ฒ”์œ„๋ฅผ ์ขํ˜€๊ฐ„๋‹ค. (๊ฐ€์„ค ๊ฒ€์ฆ ๋ฐ route finding)4. ์œ„ ๊ณผ์ •์„ ๋ฐ˜๋ณตํ•˜์—ฌ ์›์ธ์„..

BackEnd 2024. 11. 10. 21:08
๊ฐ™์ด ์ผํ•˜๊ณ  ์‹ถ์€ ์—”์ง€๋‹ˆ์–ด

'์ข‹์€ ๊ฐœ๋ฐœ์ž ๋˜๊ธฐ'์—์„œ ์ด์–ด์ง€๋Š” ๊ธ€๋กœ ์ง€๊ทนํžˆ ์ฃผ๊ด€์ ์ธ ๋‚ด์šฉ์„ ๋‹ค๋ฃน๋‹ˆ๋‹ค :)2023๋…„ 9์›”์— '์ข‹์€ ๊ฐœ๋ฐœ์ž ๋˜๊ธฐ'๋ผ๋Š” ๊ธ€์„ ํ†ตํ•ด์„œ ๋น„๋ฐ€ ๋…ธํŠธ(?)๋ฅผ ๊ณต๊ฐœํ–ˆ์—ˆ๋Š”๋ฐ ์ด์ œ๋Š” 1๋…„์ด ์ง€๋‚œ ์‹œ์ ์ด ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.๊ทธ ๋‹น์‹œ์— ์ ์—ˆ๋˜ ๋‚ด์šฉ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ํ•ญ๋ชฉ์ด 2~3๊ฐœ ์ •๋„ ๋˜๋Š” ๋‚ด์šฉ์ด์—ˆ์–ด์š”.  ๊ทธ๋ฆฌ๊ณ  ์ง€๊ธˆ ์‹œ์ ์œผ๋กœ๋Š” 1๋…„ ๊ฐ„์˜ ๊ฒฝํ—˜์ด ๋‹ด๊ฒจ์ ธ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๋‚ด์šฉ์œผ๋กœ ๋ณ€๊ฒฝ๋˜์—ˆ์–ด์š”.์˜ค๋Š˜์€ ์•„๋ž˜ ๋‚ด์šฉ์˜ ๊ฐ ๊ผญ์ง€๋ณ„๋กœ ์ข€ ๋” ์ด์•ผ๊ธฐ๋ฅผ ํ•ด๋ณด๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค :) AUSGCON์ด๋ผ๋Š” ์ปจํผ๋Ÿฐ์Šค์—์„œ๋„ ์•„๋ž˜ ๋‚ด์šฉ์„ ๊ธฐ๋ฐ˜์œผ๋กœ ๋ฐœํ‘œ๋ฅผ ํ–ˆ์—ˆ๋Š”๋ฐ์š”! ๊ด€์‹ฌ์žˆ๋Š” ๋ถ„๋“ค์€ ์‚ดํŽด๋ณด์…”๋„ ์ข‹์„ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค ใ…Žใ…Ž> gRPC์™€ ํ•จ๊ป˜ ์•Œ์•„๋ณด๋Š” ๊ฐ™์ด ์ผํ•˜๊ณ  ์‹ถ์€ ์—”์ง€๋‹ˆ์–ด ๋ฐœํ‘œ์ž๋ฃŒ ์ด๊ฑด ํ•˜์ง€ ๋ง์ž์ƒ๋Œ€๋ฐฉ ์ž…์žฅ์„ ๊ณ ๋ คํ•˜์ง€ ์•Š๊ณ  ์ถฉ๋ถ„ํ•œ ๋งฅ๋ฝ ๊ณต์œ  ์—†์ด ๋ณธ์ธ๋งŒ ์•„๋Š” ์ด์•ผ๊ธฐ๋ฅผ ํ•œ๋‹ค-..

๊ฟˆํ‹€๊ฟˆํ‹€ 2024. 10. 13. 17:58
MySQL ์‹คํ–‰ ๊ณ„ํš ํ†บ์•„๋ณด๊ธฐ

MySQL ์‹คํ–‰ ๊ณ„ํš ๋ถ„์„๐Ÿ’ก ์‹คํ–‰ ๊ณ„ํš์—์„œ ํ‘œ์‹œ๋˜๋Š” ๊ฐ ์ปฌ๋Ÿผ์ด ์–ด๋–ค ๊ฒƒ์„ ์˜๋ฏธํ•˜๋Š”์ง€ ์•Œ์•„๋ณด์ž๋ฉ”๋‰ด์–ผํ•œ ์ž‘์—…์ด๋‚˜ ๊ฐ€๋” ์ฟผ๋ฆฌ ์„ฑ๋Šฅ์„ ํ™•์ธํ•˜๊ณ  ์‹ถ์„ ๋•Œ EXPLAIN ํ‚ค์›Œ๋“œ๋ฅผ ํ†ตํ•ด MySQL ์‹คํ–‰ ๊ณ„ํš์„ ์‚ดํŽด๋ณด๊ฒŒ ๋˜๋Š”๋ฐ, ๊ฐ ์นผ๋Ÿผ์˜ ์˜๋ฏธ์— ๋Œ€ํ•ด์„œ๋Š” ๋ช…ํ™•ํ•˜๊ฒŒ ์ •๋ฆฌํ•˜๊ฑฐ๋‚˜ ์•Œ์•„๋ณธ ๊ฒฝํ—˜์ด ์—†๋Š” ๊ฒƒ ๊ฐ™์•„์„œ ์ด๋ฒˆ ๊ธฐํšŒ์— ์ด๋ฅผ ์ •๋ฆฌํ•˜๊ณ  ์ƒ๊ธฐํ•ฉ๋‹ˆ๋‹ค.๊ฐ ์นผ๋Ÿผ์˜ ๊ตฌ์„ฑ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.id, select_type, table, partitions, type, possible_keys, key, key_len, ref, rows, filtered, Extra id ์นผ๋Ÿผ๐Ÿ’ก ID ์ปฌ๋Ÿผ์€ ๋‹จ์ˆœํžˆ SELECT ์ฟผ๋ฆฌ ์ˆ˜๋ฅผ ์˜๋ฏธํ•˜๊ณ  ํ•ด๋‹น SELECT ์ฟผ๋ฆฌ๋ฅผ ์‹๋ณ„ํ•˜๊ธฐ ์œ„ํ•œ ์šฉ๋„๋กœ ์‚ฌ์šฉ๋จ.SELECT ์ฟผ๋ฆฌ ์ˆ˜๋ฅผ ์˜๋ฏธํ•˜๋ฏ€๋กœ ๊ฐ™์€ ID๊ฐ€ ์—ฌ๋Ÿฌ..

BackEnd 2024. 4. 28. 20:31
ํŠธ๋žœ์žญ์…˜ ๊ฒฉ๋ฆฌ ์ˆ˜์ค€(isolation level)์ด๋ž€?

ํŠธ๋žœ์žญ์…˜์˜ ๊ฒฉ๋ฆฌ ์ˆ˜์ค€(isolation level)์— ๋Œ€ํ•ด์„œ ์ •ํ™•ํ•˜๊ฒŒ ์ดํ•ดํ•˜๋Š” ๊ฒƒ์€ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋กœ์ง์„ ์ •ํ™•ํ•˜๊ฒŒ ์ œ์–ดํ•˜๋Š” ๊ฒƒ์— ์žˆ์–ด์„œ ์ค‘์š”ํ•ฉ๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ๊ฒฉ๋ฆฌ ์ˆ˜์ค€์ด ๊ตฌ์ฒด์ ์œผ๋กœ ์–ด๋–ป๊ฒŒ ๋™์ž‘ํ•˜๋Š”์ง€ ์ •ํ™•ํ•˜๊ฒŒ ๋ชจ๋ฅด๊ณ  ์žˆ์—ˆ๋˜ ์‚ฌ์‹ค์„ ๋ฐœ๊ฒฌํ•ด์„œ ์žฌํ•™์Šต์„ ์œ„ํ•ด ๋‚ด์šฉ์„ ์ •๋ฆฌํ•ฉ๋‹ˆ๋‹ค. ์ด ๊ธ€์€ MySQL ๊ธฐ์ค€์œผ๋กœ ์ž‘์„ฑํ•ฉ๋‹ˆ๋‹ค. ํŠธ๋žœ์žญ์…˜ ๊ฒฉ๋ฆฌ ์ˆ˜์ค€ ๊ฒฉ๋ฆฌ ์ˆ˜์ค€์€ ํฌ๊ฒŒ ๋‹ค์Œ๊ณผ ๊ฐ™์ด 4๊ฐ€์ง€๋กœ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ๋‚˜๋‰˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. READ UNCOMMITTED READ COMMITTED REPEATABLE READ SERIALIZABLE 1๋ฒˆ์—์„œ 4๋ฒˆ์œผ๋กœ ๊ฐˆ์ˆ˜๋ก ํŠธ๋žœ์žญ์…˜ ๊ฐ„์˜ ๋ฐ์ดํ„ฐ ๊ฒฉ๋ฆฌ ์ˆ˜์ค€์ด ๋†’์•„์ง€๋ฉฐ, ๋™์‹œ ์ฒ˜๋ฆฌ ์„ฑ๋Šฅ์ด ๋–จ์–ด์ง€๋Š” ๊ฒƒ์ด ์ผ๋ฐ˜์ ์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๋ณดํ†ต SERIALIZABLE ์ •๋„๊ฐ€ ์•„๋‹ˆ๋ฉด ํฌ๊ฒŒ ์„ฑ๋Šฅ์˜ ๊ฐœ์„ ์ด๋‚˜ ์ €ํ•˜๋Š” ๋ฐœ์ƒํ•˜์ง€ ..

BackEnd 2024. 3. 3. 20:13
Java Optional์ด response ํ•„๋“œ nullable ํ‘œํ˜„์— ์ ํ•ฉํ• ๊นŒ?

Java์—์„œ๋Š” null์„ ์•ˆ์ „ํ•˜๊ฒŒ ๋‹ค๋ฃจ๊ณ  ํ‘œํ˜„๋ ฅ์„ ๋†’์ด๋Š” ๋ฐฉ๋ฒ•์œผ๋กœ Optional์ด ์ž˜ ์•Œ๋ ค์ ธ์žˆ๋Š” ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ์‹ค์ œ๋กœ ์‚ฌ์šฉํ•˜๋‹ค๋ณด๋‹ˆ wrapper ํƒ€์ž…์ด๋ผ๋Š” ์ ์œผ๋กœ ์ธํ•ด ๊ณ ๋ฏผ๋˜๋Š” ์š”์ธ๋“ค์ด ๊ฝค ๋งŽ์•˜๋Š”๋ฐ์š”. ์ •ํ™•ํžˆ๋Š” Optional์„ nullable ํ‘œํ˜„์˜ ์šฉ๋„๋กœ API response ํ•„๋“œ ๊ฐ’์— ์‚ฌ์šฉํ•˜๊ณ  ์‹ถ์—ˆ๋Š”๋ฐ ๊ทธ ๊ณผ์ •์—์„œ ๊ณ ๋ฏผ๋˜๋Š” ์ ์ด ์žˆ์—ˆ์–ด์š”. ์˜ค๋Š˜์€ ๊ทธ ๋‚ด์šฉ์— ๋Œ€ํ•ด ๊ฐœ์ธ์ ์ธ ์ƒ๊ฐ์„ ์ ์–ด๋ณด๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค. Optional์„ response ํ•„๋“œ์— ์‚ฌ์šฉํ•  ๋•Œ ๋ฌธ์ œ์  1. ์ง๋ ฌํ™” "Optional์€ ์ง๋ ฌํ™”ํ•˜๋Š”๋ฐ ์˜๋„์น˜ ์•Š๋Š” ํ•„๋“œ๊ฐ€ ์ง๋ ฌํ™”๋˜๋Š” ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค." ์ง๋ ฌํ™” ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์˜ ๊ตฌํ˜„๋งˆ๋‹ค ๋‹ค๋ฅด๊ฒ ์ง€๋งŒ ๋ชจ๋‘ Optional์„ ํ˜ธํ™˜ํ•˜๋Š”์ง€๋Š” ๋ณด์žฅ๋˜์ง€ ์•Š์œผ๋ฏ€๋กœ ์šฐ๋ฆฌ๊ฐ€ ์ œ์–ดํ•  ์ˆ˜ ์žˆ๋Š” ์˜์—ญ์ด ์ค„์–ด๋“ค๊ณ ..

JAVA 2024. 2. 18. 23:51
๋น…๋ฐ์ดํ„ฐ๋ฅผ ์ง€ํƒฑํ•˜๋Š” ๊ธฐ์ˆ  CH4 - ๋น…๋ฐ์ดํ„ฐ์˜ ์ถ•์ 

๋‹ค์Œ๊ณผ ๊ฐ™์€ ์ง€์‹์„ ํ•™์Šตํ•˜๊ณ  ์ •๋ฆฌํ•ฉ๋‹ˆ๋‹ค ๋ฒŒํฌํ˜•, ์ŠคํŠธ๋ฆฌ๋ฐ ํ˜• ๋ฐ์ดํ„ฐ ์ „์†ก ์ŠคํŠธ๋ฆฌ๋ฐํ˜•์˜ ๋ฐ์ดํ„ฐ ์ „์†ก์ธ ๋ฉ”์‹œ์ง€ ๋ฐฐ์†ก ๊ตฌ์กฐ์™€ ํŠธ๋ ˆ์ด๋“œ์˜คํ”„ ์„ฑ๋Šฅ์„ ์–ป๊ณ  ์‹ ๋ขฐ์„ฑ์ด ํฌ์ƒ๋˜๋Š” ๊ฒฝ์šฐ ๋“ฑ ๋ฉ”์‹œ์ง€ ๋ฐฐ์†ก์— ์žˆ์–ด์„œ ํ”„๋กœ์„ธ์Šค ์‹œ๊ฐ„๊ณผ ์ด๋ฒคํŠธ ์‹œ๊ฐ„์˜ ๊ตฌ๋ณ„ ์ด๋ฒคํŠธ ์‹œ๊ฐ„์„ ๊ณ ๋ คํ•œ ์ตœ์ ํ™” ๋ฐ์ดํ„ฐ ์ƒ‰์ธ์„ ํ†ตํ•œ ์ตœ์ ํ™” NoSQL ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ๋ช‡ ๊ฐ€์ง€ ํŠน์„ฑ๊ณผ ๊ตฌ๋ถ„ ๋ฐ์ดํ„ฐ ์ถ•์ ์˜ ์ „๋ฐ˜์ ์ธ ํ”Œ๋กœ์šฐ 4-1 ๋ฒŒํฌ ํ˜• ์ŠคํŠธ๋ฆฌ๋ฐ ํ˜•์˜ ๋ฐ์ดํ„ฐ ์ˆ˜์ง‘ ๋ฐ์ดํ„ฐ ์ „์†ก์—๋Š” ๋ฒŒํฌ ํ˜•๊ณผ ์ŠคํŠธ๋ฆฌ๋ฐ ํ˜•์˜ ๋‘ ์ข…๋ฅ˜๊ฐ€ ์žˆ์Œ ๊ฐ๊ฐ์˜ ๋ฐฉ๋ฒ•์œผ๋กœ ๋ถ„์‚ฐ ์Šคํ† ๋ฆฌ์ง€์— ๋ฐ์ดํ„ฐ๊ฐ€ ์ €์žฅ๋  ๋•Œ๊นŒ์ง€์˜ ํ๋ฆ„์„ ์‚ดํŽด๋ณด์ž. ๊ฐ์ฒด ์Šคํ† ๋ฆฌ์ง€์™€ ๋ฐ์ดํ„ฐ ์ˆ˜์ง‘ ๋น…๋ฐ์ดํ„ฐ๋Š” ๋Œ€๋ถ€๋ถ„์˜ ๊ฒฝ์šฐ ํ™•์žฅ์„ฑ์ด ๋†’์€ ๋ถ„์‚ฐ ์Šคํ† ๋ฆฌ์ง€์— ์ €์žฅ๋จ ๋ถ„์‚ฐ ํ˜•์˜ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๊ฐ€ ์ด์šฉ๋˜๋Š” ๊ฒฝ์šฐ๋„ ์žˆ์ง€๋งŒ ๋Œ€๋Ÿ‰์œผ๋กœ ํŒŒ์ผ์„ ์ €์žฅํ•˜๊ธฐ ์œ„ํ•œ ๊ฐ์ฒด ..

data engineering 2024. 1. 21. 16:07
2023 ํšŒ๊ณ 

2023๋…„์€ ์ •๋ง ๋‹ค์ด๋‚˜๋ฏนํ–ˆ๋˜ ๊ฒƒ ๊ฐ™์•„์š”. 1๋…„์ด๋ผ๋Š” ์‹œ๊ฐ„๋™์•ˆ ์ •๋ง ๋งŽ์€ ์ผ๋“ค์ด ์žˆ์—ˆ๊ณ  ๊ฐ€์น˜๊ด€์—๋„ ํฐ ๋ณ€ํ™”๊ฐ€ ์ƒ๊ฒผ๋˜ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์ด์ œ๋Š” 1๋…„์ด๋ผ๋Š” ์‹œ๊ฐ„์— ์ด๋ ‡๊ฒŒ ๋งŽ์€ ๊ฒƒ๋“ค์„ ํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ๊ฑธ ์ดํ•ดํ–ˆ๊ณ  ๋‹ค๋ฅธ ์ด๋“ค์ด ๊ฒช์€ ์‹œ๊ฐ„๊ณผ ๊ฐ์ž์˜ ์‹œ๊ฐ„์„ ์กด์ค‘ํ•˜๊ฒŒ ๋œ ๊ฒƒ ๊ฐ™์•„์š”. ์˜ฌํ•ด 3๋…„์ฐจ๊ฐ€ ๋˜์—ˆ๊ณ  ๋‚ด๋…„์ด๋ฉด ์œค์„์—ด ๋‚˜์ด ์•„๋‹ˆ๊ณ  ์›๋ž˜ ๋‚˜์ด๋กœ 25์‚ด(00๋…„์ƒ)์ด ๋˜๋Š”๋ฐ ์‹œ๊ฐ„์ด ์ง€๋‚  ์ˆ˜๋ก ์ ์  ์—ฌ์œ ๊ฐ€ ์ƒ๊ธฐ๋ฉด์„œ๋„ ์ƒˆ๋กœ ๊ฒช๋Š” ๊ฒฝํ—˜๋“ค์ด ๋งŽ์•„์„œ ์ฆ๊ฑฐ์šด ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. 2023์— ์žˆ์—ˆ๋˜ ์ผ๋“ค ์ค‘์— ๊ธฐ์–ต๋‚˜๋Š” ๊ฒƒ๋“ค์€ ํ•˜๋‚˜์”ฉ ์‚ดํŽด๋ณผ๊ฒŒ์š”. AUSG์—์„œ ๋งŒ๋‚œ ์†Œ์ค‘ํ•œ ์Šคํ„ฐ๋”” AUSG๋ผ๋Š” AWS ๊ด€๋ จ ํด๋ผ์šฐ๋“œ ๋™์•„๋ฆฌ์—์„œ ๊ธฐ์ˆ  ์ฑ… ์Šคํ„ฐ๋””๋ฅผ ํ•œ 9๊ฐœ์›” ์ •๋„ ๋˜๋Š” ์‹œ๊ฐ„ ๋™์•ˆ ๊ฝค ์˜ค๋ž˜ ์ง„ํ–‰ํ–ˆ์–ด์š”. ์Šคํ„ฐ๋”” ๊ตฌ์„ฑ์›๋ถ„ ์ค‘์— ์–ด๋–ค ๋ถ„์ด "์šฐ๋ฆฌ๋Š” ๋‹จ์ˆœํžˆ..

๊ฟˆํ‹€๊ฟˆํ‹€ 2023. 12. 31. 20:48