์ค๋์ 2024๋ ์ ๋ง๋ฌด๋ฆฌํ๋ฉด์ 2025๋ ์ ์ ๋ณด๋ด๋ณด๊ธฐ ์ํด 2024๋ ์ ๊ฒฝํ์ ๊ธฐ๋ฐ์ผ๋ก ๊ฐ์ธ ํ๊ณ ๋ฅผ ์์ฑํด๋ณด๋ ค๊ณ ํฉ๋๋ค.์ด๋ฒ ํ๊ณ ๋ ์ฌํด์ ์์๋ ์ผ๋ค์ ์ ๊ฐ ์ถ๊ตฌํ๋ ๊ฐ์น๊ด ์นดํ ๊ณ ๋ฆฌ๋ณ๋ก ๋์๋ณด๊ณ ๋ง์ง๋ง์ KPT๋ฐฉ์์ผ๋ก ํ๊ณ ํด๋ณด๋ ค๊ณ ํด์.์ง๋ 2023๋ ํ๊ณ ํ๊ณ ๋ฅผ ์์ฑํ๊ธฐ ์ ์ 2023๋ ํ๊ณ ๋ฅผ ๋ค์ ์ฝ์ด๋ดค๋๋ฐ, ์๋์ ๊ฐ์ ๋ชฉํ๋ฅผ ์ ์ด๋จ์๋ ๊ฑธ ๋ฐ๊ฒฌํ์ต๋๋ค.2024๋ ์ค๊ฐ์ ์ฌ๋ฌ ์ผ๋ค์ด ์์์ง๋ง ๊ฒฐ๋ก ์ ์ผ๋ก๋ ๊ฑด๊ฐํ ์ฌ๋, "์์ ์ข์๋ณด์ธ๋ค"๋ ๋ง์ ์ฌ๋ฌ๋ช ์๊ฒ ๋ฃ๊ฒ๋ ๊ฒ ๊ฐ์ต๋๋ค ใ ใ ์์ง๋์ด๋ง ๋ถ์ผ์์ ์ข์ ์ํฅ๋ ฅ์ ๋๋์ - ์ปจํผ๋ฐ์ค ๋ฐํ, ์ปค๋ฎค๋ํฐ ํ๋, ๋ฉํ ๋ง์ฌํด๋ ์ ๊ฐ ์ํํธ์จ์ด ์์ง๋์ด๋ก ์ผํ์ง 3๋ ์ด ๋๋ ํด์์ด์. 3๋ ์ด๋ผ๋ ์๊ฐ๋์ ์ ๋ฌด์ ๊ณต๋ถ๋ฅผ ์ด์ฌํํ๋๋ผ ๋ฐ์ ์๊ฐ์ ๋ณด๋๊ณ ์ด์ ๋..
ํน์ Zero Copy์ ๋ํด์ ์์๋์? ์ ๋ ๋ฐ์ดํฐ ์์ง๋์ด๋ง์ ๊ณต๋ถํ๋ฉด์ ์ฒ์ ์๊ฒ๋์๊ณ ๊ฝค ํฅ๋ฏธ๋ก์ด ๋ฉ์ปค๋์ฆ์ด์์ต๋๋ค ใ ใ ๊ทธ๋ฆฌ๊ณ ์ต๊ทผ์ kotlin์ ํ์ฉํด์ ํ์ผ ์๋น์ ๋ค๋ฃจ๋ ์์ ์ ์งํํ๋ ๊ฒฝํ์ด ์๋๋ฐ, ๋น์ ํ์ผ ์ ์ก ์๋๊ฐ ๊ฝค ์ค์ํ ์์์๊ณ ์์ฐ์ค๋ฝ๊ฒ Zero Copy๊ฐ ๋ ์ฌ๋์ต๋๋ค.kotlin์ ์ฌ์ฉํ๋ค๋ณด๋ JVM์ด๋ผ๋ ๋๊ตฌ์์ ์ค๋ ํน์ฑ ๋ฑ๋ ๊ณ ๋ฏผํ๊ฒ ๋๊ณ ๊ฝค ์๋ฏธ์๋ ๊ฒฝํ์ด์๋๋ฐ์.๊ทธ๋์ ์ค๋์ Zero Copy์ ๋ํด์ ๊ฐ๋จํ๊ฒ ์๊ฐํ๊ณ kotlin S3 upload์์ Zero Copy๊ฐ ๊ฐ๋ฅํ์ง? ๋ฑ์ ๊ณต์ ํด๋ณด๊ฒ ์ต๋๋ค :)๋จผ์ , ์ฝ๋๋ ๋ฒจ์์ ํ์ผ ์ ์ก ๋ฑ local storage(e.g. disk)์์ ํ์ผ์ ์ฝ์ด์ ์ธ๋ถ๋ก ๋ณด๋ด๋ ๋ก์ง์ ๊ตฌ์ฑํ๋ค๋ฉด ์ด๋ค ๊ณผ์ ์ ๊ฑฐ์น๊ฒ ๋ ๊น..
์ด ๊ธ์ ์ต๊ทผ์ ์์๋ ์๋ฒ OOMKilled ์ฅ์ ๊ณผ์ ์ ๊ธฐ๋ก ๋ฐ ๊ณต์ ํ๋ฉฐ ํ๊ณ ํ๋ ๊ธ์ ๋๋ค.๋ํ ์ด ๊ธ์ ์ธํ๋ผ ๋ ๋ฒจ(cpu, memory)์์์ ์ฅ์ ๊ฐ์ง ๋ฐ ๋์ ํ๋ก์ธ์ค์ ๊ดํ ๋ด์ฉ์ ๊ธฐ๋กํ๊ธฐ ๋๋ฌธ์ NPE(Null Point Exception) ๊ฐ์ ์ฝ๋ ๋ ๋ฒจ์์์ ๋ช ํํ๊ณ ๋จ์ํ ๋ฌธ์ ๋ ํฌ๊ฒ ๋ค๋ฃจ์ง ์์ต๋๋ค. ์ฌ๋ฌ๋ถ๋ค์ ์๋ฒ์ ๋ฉ๋ชจ๋ฆฌ๊ฐ ๋ถ์กฑํด OOMKilled ์ฅ์ ๋ฐ์ ์ ์ด๋ป๊ฒ ๋์ํ์๋์?์ ๋ ๋ณดํต ๋ค์๊ณผ ๊ฐ์ ํ๋ก์ธ์ค๋ก ๋์ํฉ๋๋ค.1. ์ฅ์ ๊ฐ์ง2. ์์๋๋ ์์ธ ๋ฒ์๋ฅผ ํฉ๋ฆฌ์ ์ผ๋ก ์ฐพ๊ณ ๊ฐ์ค์ ์ธ์ด๋ค. (๊ฐ์ค ์๋ฆฝ)3. ๊ฐ์ค์ ๊ฒ์ฆํ๊ธฐ ์ํด APM, log ๋ฑ ๋จ์๋ค์ ์ฐพ๊ณ ๊ฐ์ค์ ํ์ธํ๊ณ ์์ธ ๋ฒ์๋ฅผ ์ขํ๊ฐ๋ค. (๊ฐ์ค ๊ฒ์ฆ ๋ฐ route finding)4. ์ ๊ณผ์ ์ ๋ฐ๋ณตํ์ฌ ์์ธ์..
'์ข์ ๊ฐ๋ฐ์ ๋๊ธฐ'์์ ์ด์ด์ง๋ ๊ธ๋ก ์ง๊ทนํ ์ฃผ๊ด์ ์ธ ๋ด์ฉ์ ๋ค๋ฃน๋๋ค :)2023๋ 9์์ '์ข์ ๊ฐ๋ฐ์ ๋๊ธฐ'๋ผ๋ ๊ธ์ ํตํด์ ๋น๋ฐ ๋ ธํธ(?)๋ฅผ ๊ณต๊ฐํ์๋๋ฐ ์ด์ ๋ 1๋ ์ด ์ง๋ ์์ ์ด ๋์์ต๋๋ค.๊ทธ ๋น์์ ์ ์๋ ๋ด์ฉ์ ๋ค์๊ณผ ๊ฐ์ด ํญ๋ชฉ์ด 2~3๊ฐ ์ ๋ ๋๋ ๋ด์ฉ์ด์์ด์. ๊ทธ๋ฆฌ๊ณ ์ง๊ธ ์์ ์ผ๋ก๋ 1๋ ๊ฐ์ ๊ฒฝํ์ด ๋ด๊ฒจ์ ธ ๋ค์๊ณผ ๊ฐ์ ๋ด์ฉ์ผ๋ก ๋ณ๊ฒฝ๋์์ด์.์ค๋์ ์๋ ๋ด์ฉ์ ๊ฐ ๊ผญ์ง๋ณ๋ก ์ข ๋ ์ด์ผ๊ธฐ๋ฅผ ํด๋ณด๋ ค๊ณ ํฉ๋๋ค :) AUSGCON์ด๋ผ๋ ์ปจํผ๋ฐ์ค์์๋ ์๋ ๋ด์ฉ์ ๊ธฐ๋ฐ์ผ๋ก ๋ฐํ๋ฅผ ํ์๋๋ฐ์! ๊ด์ฌ์๋ ๋ถ๋ค์ ์ดํด๋ณด์ ๋ ์ข์ ๊ฒ ๊ฐ์ต๋๋ค ใ ใ > gRPC์ ํจ๊ป ์์๋ณด๋ ๊ฐ์ด ์ผํ๊ณ ์ถ์ ์์ง๋์ด ๋ฐํ์๋ฃ ์ด๊ฑด ํ์ง ๋ง์์๋๋ฐฉ ์ ์ฅ์ ๊ณ ๋ คํ์ง ์๊ณ ์ถฉ๋ถํ ๋งฅ๋ฝ ๊ณต์ ์์ด ๋ณธ์ธ๋ง ์๋ ์ด์ผ๊ธฐ๋ฅผ ํ๋ค-..
MySQL ์คํ ๊ณํ ๋ถ์๐ก ์คํ ๊ณํ์์ ํ์๋๋ ๊ฐ ์ปฌ๋ผ์ด ์ด๋ค ๊ฒ์ ์๋ฏธํ๋์ง ์์๋ณด์๋ฉ๋ด์ผํ ์์ ์ด๋ ๊ฐ๋ ์ฟผ๋ฆฌ ์ฑ๋ฅ์ ํ์ธํ๊ณ ์ถ์ ๋ EXPLAIN ํค์๋๋ฅผ ํตํด MySQL ์คํ ๊ณํ์ ์ดํด๋ณด๊ฒ ๋๋๋ฐ, ๊ฐ ์นผ๋ผ์ ์๋ฏธ์ ๋ํด์๋ ๋ช ํํ๊ฒ ์ ๋ฆฌํ๊ฑฐ๋ ์์๋ณธ ๊ฒฝํ์ด ์๋ ๊ฒ ๊ฐ์์ ์ด๋ฒ ๊ธฐํ์ ์ด๋ฅผ ์ ๋ฆฌํ๊ณ ์๊ธฐํฉ๋๋ค.๊ฐ ์นผ๋ผ์ ๊ตฌ์ฑ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.id, select_type, table, partitions, type, possible_keys, key, key_len, ref, rows, filtered, Extra id ์นผ๋ผ๐ก ID ์ปฌ๋ผ์ ๋จ์ํ SELECT ์ฟผ๋ฆฌ ์๋ฅผ ์๋ฏธํ๊ณ ํด๋น SELECT ์ฟผ๋ฆฌ๋ฅผ ์๋ณํ๊ธฐ ์ํ ์ฉ๋๋ก ์ฌ์ฉ๋จ.SELECT ์ฟผ๋ฆฌ ์๋ฅผ ์๋ฏธํ๋ฏ๋ก ๊ฐ์ ID๊ฐ ์ฌ๋ฌ..
ํธ๋์ญ์ ์ ๊ฒฉ๋ฆฌ ์์ค(isolation level)์ ๋ํด์ ์ ํํ๊ฒ ์ดํดํ๋ ๊ฒ์ ์ ํ๋ฆฌ์ผ์ด์ ๋ก์ง์ ์ ํํ๊ฒ ์ ์ดํ๋ ๊ฒ์ ์์ด์ ์ค์ํฉ๋๋ค. ํ์ง๋ง ๊ฒฉ๋ฆฌ ์์ค์ด ๊ตฌ์ฒด์ ์ผ๋ก ์ด๋ป๊ฒ ๋์ํ๋์ง ์ ํํ๊ฒ ๋ชจ๋ฅด๊ณ ์์๋ ์ฌ์ค์ ๋ฐ๊ฒฌํด์ ์ฌํ์ต์ ์ํด ๋ด์ฉ์ ์ ๋ฆฌํฉ๋๋ค. ์ด ๊ธ์ MySQL ๊ธฐ์ค์ผ๋ก ์์ฑํฉ๋๋ค. ํธ๋์ญ์ ๊ฒฉ๋ฆฌ ์์ค ๊ฒฉ๋ฆฌ ์์ค์ ํฌ๊ฒ ๋ค์๊ณผ ๊ฐ์ด 4๊ฐ์ง๋ก ๋ค์๊ณผ ๊ฐ์ด ๋๋๊ฒ ๋ฉ๋๋ค. READ UNCOMMITTED READ COMMITTED REPEATABLE READ SERIALIZABLE 1๋ฒ์์ 4๋ฒ์ผ๋ก ๊ฐ์๋ก ํธ๋์ญ์ ๊ฐ์ ๋ฐ์ดํฐ ๊ฒฉ๋ฆฌ ์์ค์ด ๋์์ง๋ฉฐ, ๋์ ์ฒ๋ฆฌ ์ฑ๋ฅ์ด ๋จ์ด์ง๋ ๊ฒ์ด ์ผ๋ฐ์ ์ ๋๋ค. ๊ทธ๋ฆฌ๊ณ ๋ณดํต SERIALIZABLE ์ ๋๊ฐ ์๋๋ฉด ํฌ๊ฒ ์ฑ๋ฅ์ ๊ฐ์ ์ด๋ ์ ํ๋ ๋ฐ์ํ์ง ..
Java์์๋ null์ ์์ ํ๊ฒ ๋ค๋ฃจ๊ณ ํํ๋ ฅ์ ๋์ด๋ ๋ฐฉ๋ฒ์ผ๋ก Optional์ด ์ ์๋ ค์ ธ์๋ ๊ฒ ๊ฐ์ต๋๋ค. ํ์ง๋ง ์ค์ ๋ก ์ฌ์ฉํ๋ค๋ณด๋ wrapper ํ์ ์ด๋ผ๋ ์ ์ผ๋ก ์ธํด ๊ณ ๋ฏผ๋๋ ์์ธ๋ค์ด ๊ฝค ๋ง์๋๋ฐ์. ์ ํํ๋ Optional์ nullable ํํ์ ์ฉ๋๋ก API response ํ๋ ๊ฐ์ ์ฌ์ฉํ๊ณ ์ถ์๋๋ฐ ๊ทธ ๊ณผ์ ์์ ๊ณ ๋ฏผ๋๋ ์ ์ด ์์์ด์. ์ค๋์ ๊ทธ ๋ด์ฉ์ ๋ํด ๊ฐ์ธ์ ์ธ ์๊ฐ์ ์ ์ด๋ณด๋ ค๊ณ ํฉ๋๋ค. Optional์ response ํ๋์ ์ฌ์ฉํ ๋ ๋ฌธ์ ์ 1. ์ง๋ ฌํ "Optional์ ์ง๋ ฌํํ๋๋ฐ ์๋์น ์๋ ํ๋๊ฐ ์ง๋ ฌํ๋๋ ๋ฌธ์ ๊ฐ ๋ฐ์ํ ์ ์์ต๋๋ค." ์ง๋ ฌํ ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ ๊ตฌํ๋ง๋ค ๋ค๋ฅด๊ฒ ์ง๋ง ๋ชจ๋ Optional์ ํธํํ๋์ง๋ ๋ณด์ฅ๋์ง ์์ผ๋ฏ๋ก ์ฐ๋ฆฌ๊ฐ ์ ์ดํ ์ ์๋ ์์ญ์ด ์ค์ด๋ค๊ณ ..
๋ค์๊ณผ ๊ฐ์ ์ง์์ ํ์ตํ๊ณ ์ ๋ฆฌํฉ๋๋ค ๋ฒํฌํ, ์คํธ๋ฆฌ๋ฐ ํ ๋ฐ์ดํฐ ์ ์ก ์คํธ๋ฆฌ๋ฐํ์ ๋ฐ์ดํฐ ์ ์ก์ธ ๋ฉ์์ง ๋ฐฐ์ก ๊ตฌ์กฐ์ ํธ๋ ์ด๋์คํ ์ฑ๋ฅ์ ์ป๊ณ ์ ๋ขฐ์ฑ์ด ํฌ์๋๋ ๊ฒฝ์ฐ ๋ฑ ๋ฉ์์ง ๋ฐฐ์ก์ ์์ด์ ํ๋ก์ธ์ค ์๊ฐ๊ณผ ์ด๋ฒคํธ ์๊ฐ์ ๊ตฌ๋ณ ์ด๋ฒคํธ ์๊ฐ์ ๊ณ ๋ คํ ์ต์ ํ ๋ฐ์ดํฐ ์์ธ์ ํตํ ์ต์ ํ NoSQL ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๋ช ๊ฐ์ง ํน์ฑ๊ณผ ๊ตฌ๋ถ ๋ฐ์ดํฐ ์ถ์ ์ ์ ๋ฐ์ ์ธ ํ๋ก์ฐ 4-1 ๋ฒํฌ ํ ์คํธ๋ฆฌ๋ฐ ํ์ ๋ฐ์ดํฐ ์์ง ๋ฐ์ดํฐ ์ ์ก์๋ ๋ฒํฌ ํ๊ณผ ์คํธ๋ฆฌ๋ฐ ํ์ ๋ ์ข ๋ฅ๊ฐ ์์ ๊ฐ๊ฐ์ ๋ฐฉ๋ฒ์ผ๋ก ๋ถ์ฐ ์คํ ๋ฆฌ์ง์ ๋ฐ์ดํฐ๊ฐ ์ ์ฅ๋ ๋๊น์ง์ ํ๋ฆ์ ์ดํด๋ณด์. ๊ฐ์ฒด ์คํ ๋ฆฌ์ง์ ๋ฐ์ดํฐ ์์ง ๋น ๋ฐ์ดํฐ๋ ๋๋ถ๋ถ์ ๊ฒฝ์ฐ ํ์ฅ์ฑ์ด ๋์ ๋ถ์ฐ ์คํ ๋ฆฌ์ง์ ์ ์ฅ๋จ ๋ถ์ฐ ํ์ ๋ฐ์ดํฐ๋ฒ ์ด์ค๊ฐ ์ด์ฉ๋๋ ๊ฒฝ์ฐ๋ ์์ง๋ง ๋๋์ผ๋ก ํ์ผ์ ์ ์ฅํ๊ธฐ ์ํ ๊ฐ์ฒด ..
- Total
- Today
- Yesterday
- 2023 ํ๊ณ
- golang oomkilled
- ๊น์ด/๋๋น ์ฐ์ ํ์(DFS/BFS)
- AWS re:Invent 2023
- ์ฅ์ ํ๊ณ
- ์คํ/ํ
- grpc client
- kotlin s3 upload
- ํ(Heap)
- ํ๋ก๊ทธ๋๋จธ์ค
- ์ถ์ ์ง๋
- Go
- ์ข์ ์ฝ๋๋ ๋ฌด์์ธ๊ฐ?
- ํธ๋์ญ์ ๊ฒฉ๋ฆฌ ์์ค
- ์ฝ๋ฉํ ์คํธ
- ํด์
- mysql
- ๋ฑ ํฌ์๋ฌ๋ ๊ฐ๋ฐ์
- rate limit
- ์ข์ ๊ฐ๋ฐ์ ๋๊ธฐ
- ์๊ณ ๋ฆฌ์ฆ
- 2023 ๊ฐ๋ฐ์ ํ๊ณ
- mysql ์คํ ๊ณํ
- Aws Reinvent 2023
- ์ข์ ์์ง๋์ด
- ์ข์ ๊ฐ๋ฐ์
- HTTP
- ๋ฐฑ์ค
- Golang
- 2024ํ๊ณ
์ผ | ์ | ํ | ์ | ๋ชฉ | ๊ธ | ํ |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |