
๊ฒ์๊ธ ์ ๋ณด๋ฅผ ๋ด๋ article ํ ์ด๋ธ์ ์ฝ 1200๋ง๊ฑด์ ๋ฐ์ดํฐ๋ฅผ ์ฝ์ ํ์๋ค.๋ถ์ฐ ๋ฐ์ดํฐ๋ฒ ์ด์ค ํ๊ฒฝ์ ์ฑ๋ฅ์ ๊ณ ๋ คํ์ฌ FK๋ ์ค์ ํ์ง ์์๋ค.(board_id, writer_id)QueryPlan์ ํ์ธํ๊ณ , ์ธ๋ฑ์ค๋ฅผ ์ค์ ํ๋ ๋ฑ ํ ์คํธ๋ฅผ ์งํํ๋ฉฐ ์ฑ๋ฅ์ ๊ฐ์ ํด๋ณด์

DP์ ๋ํ๊ฒฉ์ธ 0-1 Knapsack ๋ฌธ์ ๋ฅผ ์ ๋ฆฌํด๋ณด์.์กฐ๊ฑด์์ดํ ์ ์ ํํ๊ฑฐ๋ ์ ํํ์ง ์๊ฑฐ๋ ๋ ์ค ํ๋๋ง ๊ฐ๋ฅ. (0-1)๊ฐ ์์ดํ ์ ๋ฌด๊ฒ(Weight)์ ๊ฐ์น(Value)๋ฅผ ์ง๋๋ค.์ต๋ W์ ๋ฌด๊ฒ์์, ์ต๋ ๊ฐ์น์ ์กฐํฉ์ ์ฐพ์๋ผ.๊ธฐ๋ณธ Knapsack ๋ฌธ์ ๋ ์ผ์ฐจ

Java์์ ๋์์ฑ(concurrency)์ ๋ค๋ฃจ๋ ๋ฐฉ๋ฒ์ ํฌ๊ฒ ์ธ๊ฐ์ง๊ฐ ์กด์ฌํ๋ค.synchronizedvolatileAtomic์ด ์ค volatile์ ๋ค๋ฅธ ์ค๋ ๋์ ๋ณ๊ฒฝ ์ฌํญ์ ๋ํ ๊ฐ์์ฑ(Visibility)์ ํ๋ณด์์ผ ์ค๋ค. ํ์ง๋ง ์์์ฑ์ ๋ณด์ฅํ์ง ์๊ธฐ ๋๋ฌธ์

์ฌ๋ฌ ํ์ด ๋งค์นญ ํ๋ซํผ์ ์์ฒญ์ ๋ณด๋ด ๋ฐ์ดํฐ๋ฅผ ๊ฐ๊ณตํ์ฌ ๋ด๋ณด๋ด๋ 'ํ์ดํ์ธ๋' ํ๋ก์ ํธ๊ฐ ์๋ค.๋ง์ฝ ์์ฒญ์ ๋ณด๋ธ ์ฌ๋ฌ ํ๋ซํผ ์ค ํน์ ํ๋ซํผ์ด ์๋ตํ์ง ์๋๋ค๋ฉด?์๋ตํ์ง ์๋ ํ๋ซํผ์ ์ ์ธํ๊ณ , ๋๋จธ์ง ๋ฐ์ดํฐ๋ง ๊ฐ๊ณตํด์ ๋ด๋ ค์ฃผ์ด์ผ ํ๋ค.๊ธฐ์กด์ฝ๋๋ new RestTemp

MySQL InnoDB ๋ฒํผ ํ์ ์ฟผ๋ฆฌ์ ์ฑ๋ฅ๊ณผ ๋ฐ์ ํ๊ฒ ์ฐ๊ฒฐ๋ผ ์๋ค.๋ฒํผ ํ์ ๋ฉ๋ชจ๋ฆฌ ์์ ์ ์ฌ๋๊ณ , ์ ํ๋ฆฌ์ผ์ด์ ์ DML์ ํตํด ์กฐ์๋๋ค.์กฐ์ํ๋ ค๋ ๋ฐ์ดํฐ๊ฐ ์ด๋ฏธ ๋ฒํผํ์ ์กด์ฌํ๋ค๋ฉด, ๋ฉ๋ชจ๋ฆฌ I/O ๋ง ์ผ์ด๋๋ฏ๋ก ์ ํ๋ฆฌ์ผ์ด์ ์ ๋น ๋ฅธ ์๋ต์ ๋ฐ์ ์ ์๋ค.ํ์ง๋ง ์กฐ์

๋ฐ์ดํฐ๋ฒ ์ด์ค ์ด์ํ์์ด๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ค๊ณ๊ฐ ์๋ชป๋์๊ฑฐ๋, ๋น์ ๊ทํ๋ ์ํ์์ ๋ฐ์ํ๋ ๋นํจ์จ์ ์ด๊ณ ๋ถ์ ํํ ๋ฐ์ดํฐ ์ฒ๋ฆฌ ๋ฌธ์ ๋ฅผ ์๋ฏธํ๋ค.์๋ ํ ์ด๋ธ๋ก ์ฝ์ ์ด์, ๊ฐฑ์ ์ด์, ์ญ์ ์ด์์ ์์๋ฅผ ๋ค์ด๋ณด์. ์ฌ์ง์ถ์ฒ - https://dev-coco.tistory.

๋์ปค ์ปจํ ์ด๋ ๊ธฐ๋ฐ์ ํ๋ก์ ํธ์์ CI/CD ์ ์ฉํ๋ฉด์ ๊ฒช์ ๊ณผ์ ์ ์ ๋ฆฌํ๋ ค๊ณ ํ๋ค.๋๋ต์ ์ธ Flow๋ ๋ค์๊ณผ ๊ฐ๋ค.Git Pushapplication.yml ํ์ผ์ GitHub Secrets์์ ๋ณต์ฌํ๋ค.Docker ์ด๋ฏธ์ง๋ฅผ ์์ฑํ๋ค. (docker build -t

๊ฒ์๊ธ ์ฐธ๊ณ : inpa.tistory.com - REDIS-๐-์บ์Cache-์ค๊ณ-์ ๋ต-์ง์นจ-์ด์ ๋ฆฌ์บ์๋ ์ผ๋ฐ์ ์ผ๋ก ๋ฉ๋ชจ๋ฆฌ๋ฅผ ์ฌ์ฉํ๊ธฐ ๋๋ฌธ์ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ณด๋ค ํจ์ฌ ๋น ๋ฅด๊ฒ ์๋ต์ด ๊ฐ๋ฅํ๋ค. ํ์ง๋ง ์บ์๋ ๋ฐ์ดํฐ ์ ํฉ์ฑ ๋ฌธ์ ๋ฅผ ์ผ๊ธฐํ ๊ฐ๋ฅ์ฑ์ด ์์ผ๋ฉฐ, ๋ฉ๋ชจ๋ฆฌ๊ฐ ์๋์ ์ผ

1000๋ช ์ด ๋์์ ์ฑํ ํ ์ ์๋ Group-Chat ์์คํ ์ ์ค๊ณํด๋ณด์.TPS = 1000 ์ด๋ผ๊ณ ๊ฐ์ ํ๋ค.1000๋ช ์ ์ ์ ๊ฐ ๋จ ํ๋์ ์๋ฒ์ ์น์์ผ์ ์ฐ๊ฒฐํ๊ณ ๋ฉ์์ง๋ฅผ ์ฃผ๊ณ ๋ฐ๋๋ค๋ฉด, ์๋ฒ ๊ณผ๋ถํ๊ฐ ๋ฐ์ํ ์ ์์ด ์์ ์ ์ธ ์๋น์ค๋ฅผ ์ง์ํ ์ ์๋ค.์ด๋ฅผ ํด๊ฒฐํ๊ธฐ
MySQL์ ์คํ ๋ฆฌ์ง ์์ง ์ค ๊ธฐ๋ณธ์ ์ผ๋ก ๊ฐ์ฅ ๋ง์ด ์ฌ์ฉ๋๋ ์์ง์ InnoDB ์ด๋ค. InnoDB๋ MySQL์ ์คํ ๋ฆฌ์ง ์์ง ์ค ๊ฑฐ์ ์ ์ผํ๊ฒ ๋ ์ฝ๋ ๊ธฐ๋ฐ์ ์ ๊ธ์ ์ ๊ณตํ๋ฉฐ, ๊ทธ ๋๋ฌธ์ ๋์ ๋์์ฑ ์ฒ๋ฆฌ๊ฐ ๊ฐ๋ฅํ๊ณ ์์ ์ ์ด๋ฉฐ ์ฑ๋ฅ์ด ๋ฐ์ด๋๋ค. InnoDB ์ํคํ

CMU Andy Pavlo ๊ต์๋์ ๊ฐ์๋ฅผ ์ ๋ฆฌํ ๋ด์ฉ์ ๋๋ค.\[๋ฐ์ดํฐ๋ฅผ ์ปด๋ง๋ก ๊ตฌ๋ถ๋, ํ์ผ์ ์ ์ฅํ๋ฉด ์ด๋ค ๋ฌธ์ ์ ์ด ๋ฐ์ํ๋๊ฐ?๊ทธ๋ฆฌ๊ณ ์ด๋ฅผ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด๋ฅผ ํตํด ์ง์ ํ์ฑํด์ ๋ค๋ค์ผ ํ๋ค๋ฉด?๋ง์ฝ ๋๊ตฐ๊ฐ๊ฐ year๋ฅผ ์ ์ฅํด์ผํ๋ ๊ณณ์ Invalid String์ ์ฝ

MySQL ์๋ฒ๋ ํฌ๊ฒ MySQL ์์ง๊ณผ ์คํ ๋ฆฌ์ง ์์ง์ผ๋ก ๊ตฌ๋ถํ ์ ์๋ค.MySQL ์์ง์ ์ฌ๋์ ๋จธ๋ฆฌ์ ๊ฐ์ ์ญํ ๋ก, ์ฟผ๋ฆฌ๋ฅผ ์ต์ ํ ํ๊ณ ์คํ๊ณํ์ ์๋ฆฝํ๋ค.์คํ ๋ฆฌ์ง ์์ง์ ์ฌ๋์ ์๋ฐ๊ณผ ๊ฐ์ ์ญํ ๋ก, ์ค์ ๋ฐ์ดํฐ๋ฅผ ๋์คํฌ ์คํ ๋ฆฌ์ง์ ์ฝ๊ณ ์ฐ๋ ์ญํ ์ ๋งก๋๋ค.์คํ ๋ฆฌ

ํ์๊ฐ์ ๋ก์ง ํ์๊ฐ์ ์ ์ฒ๋ฆฌํ๋ RegisterUserService ๊ตฌํ์ฒด์ด๋ค. ํ์๊ฐ์ ๋ก์ง์, ์ค๋ณต๋ ์ ์ ์ด๋ฆ์ด ๋ฐ์ํ์ง ์๋๋ก ํ๊ธฐ ์ํด ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๊ฐ์ ์ด๋ฆ์ด ์กด์ฌํ๋์ง ํ์ธํ๋ค. ์กด์ฌํ๋ค๋ฉด, ์์ธ๋ฅผ ๋ฐ์์ํจ๋ค. ์ด ์์ธ๋ @ControllerAdv

ํ์ ๊ณผ ํจ์ ํ์ ํ์ ์ ์งํฉ์ด๋ค. boolean, int ๊ฐ์ ์์ํ์ (Primitive Type) ์ธ์๋ ๊ตฌ์กฐ์ฒด, ํด๋์ค, Enum ๋ฑ๋ ๋ชจ๋ ํ์ ์ ํด๋นํ๋ค. Boolean = {False, True} Integer = {... -1, 0, 1, ...}

2019 ์นด์นด์ค ๊ฐ๋ฐ์ ๊ฒจ์ธ ์ธํด์ญ - ๋ถ๋ ์ฌ์ฉ์๋ฌธ์ ์์๋ user_id ์ ๋ฌธ์์ด์ ์ผ๋ถ๊ฐ '\*'๋ก ์ด๋ฃจ์ด์ง banned_id๊ฐ ๋งค์นญ๋๋์ง๋ฅผ ํ์ ํด์ผํ๋ค.๋๋ ์์ ๊ฐ์ด ์ผ์ผ์ด ํ์ ํ์์ผ๋(ใ ใ ;)ํ๊ณ ๋์ ๋ค๋ฅธ ์ฌ๋์ ํ์ด๋ฅผ ๋ณด๋ค๊ฐ String ํด๋์ค์์ ์ ๊ณตํ๋

์ค๋ ๋๋ Unit of Execution์ผ๋ก ๋ถ๋ฆฌ๋ฉฐ, CPU ์ฝ์ด์ ์คํ๋จ์์ด๋ค.์ฆ, ํ๋์ ํ๋ก์ธ์ค์์ ๋ ๊ฐ ์ด์์ ์ค๋ ๋๋ฅผ ์ฌ์ฉํจ์ผ๋ก์จ ๋ ๊ฐ์ง ์ด์์ ์์ ์ ๋์์ ์คํํ ์ ์๋ค. ํ์ง๋ง ๋จ์ํ Thread๋ง ์ฌ์ฉํด์ ๋์์ ์ฌ๋ฌ ์์ ์ ์ฒ๋ฆฌํ๋ ํ๋ก๊ทธ๋จ์ ๋ง

ํ๋ก์ธ์ค๋ ์คํ์ค์ธ ํ๋ก๊ทธ๋จ์ด๋ฉฐ, ์ด์์ฒด์ ๋ก๋ถํฐ ๋ ๋ฆฝ๋ ๋ฉ๋ชจ๋ฆฌ ๊ณต๊ฐ์ ํ ๋น๋ฐ๋๋ค. ๋ฉ๋ชจ๋ฆฌ ๊ณต๊ฐ์ Code/Data/Heap/Stack ์์ญ์ผ๋ก ์ด๋ฃจ์ด์ ธ์๋ค.Code ์์ญ์ read-only๋ก, ์คํํ ํ๋ก๊ทธ๋จ์ ๊ธฐ๊ณ์ด ์ฝ๋๊ฐ ์ ์ฅ๋๋ค.Data ์์ญ์ ์ ์ญ๋ณ์, ์ ์ ๋ณ์
๋ด๊ฐ ์ํ Organization์ ๋ ํฌ์ ์ค๋๋ง์ push๋ฅผ ํ๋๋ฐ,Personal Access Token์ด ๋ง๋ฃ๋์ด์ ์ฌ๋ก๊ทธ์ธ์ ํด์ผํ๋ค.๊ทธ๋ฐ๋ฐ ๊นํ๋ธ username๊ณผ ์๋ก ๋ฐ๊ธํ ํ ํฐ์ ์ ํํ๊ฒ ์ ๋ ฅํด๋ ์ง์์ ์ผ๋ก remote: Invalid username o

BOJ 17472 - ๋ค๋ฆฌ๋ง๋ค๊ธฐ 2๋ด์ผ ํ๋์คํ ์๋ฒ ์ฝํ ๋ฅผ ์๋๊ณ ๋นก์ผ ๊ตฌํ ๋ฌธ์ ํ๋ ํ์ด๋ณด์๋ค. ์ฃผ์ด์ง ์ด์ฐจ์ ํ๋ฉด์์ ์กฐ๊ฑด์ ๋ง๊ฒ ๋ค๋ฆฌ๋ฅผ ๊ฑด์คํ๊ณ , ๋ชจ๋ ๊ฒฝ๋ก๋ฅผ ์๋ ๋ค๋ฆฌ ๊ธธ์ด์ ์ดํฉ์ ์ต์๋ฅผ ๊ตฌํ๋ ๋ฌธ์ ์ด๋ค.๊ฐ๊ฐ์ ์ฌ์ ๊ทธ๋ํ์ ๋ ธ๋๋ก, ๋ค๋ฆฌ๋ฅผ ๊ฐ์ ์ผ๋ก ์๊ฐํ