kuke
@kuke
Students
1,768
Reviews
188
Course Rating
4.9
์๋ ํ์ธ์.
IT ๊ธฐ์ ๊ฐ๋ฐ์๋ก ๊ทผ๋ฌดํ๋ฉฐ, ๋๊ท๋ชจ ์์คํ ์ ์งํฑํ๊ธฐ ์ํด ๋ค์ํ ๊ธฐ์ ์ ํ์ฉํด๋ณด๊ณ ์์ต๋๋ค.
์ค๋ฌด ๊ด์ ์ ๊ฐ๋ฐ ์ง์์ ๊ณต์ ํ๊ณ ์ ๊ฐ์คํ์๊ณ , ๋ง์ ๋์์ด ๋์์ผ๋ฉด ์ข๊ฒ ์ต๋๋ค.
[๋ฌธ์]
Email : kukekyakya@gmail.com
Courses
Reviews
rrecordd0622
ยท
Learning Large-Scale System Design by Building Directly with Spring Boot - Bulletin BoardLearning Large-Scale System Design by Building Directly with Spring Boot - Bulletin Board- Learning Large-Scale System Design by Building Directly with Spring Boot - Bulletin Board
- Spring Boot: Learn Large-Scale System Design by Building - Cache Strategies
- Learning Large-Scale System Design by Building Directly with Spring Boot - Bulletin Board
- Spring Boot: Learn Large-Scale System Design by Building - Cache Strategies
Posts
Q&A
jpa ddl-auto none์ ํ๋ ์ด์ ์ join ๋ฐฉ๋ฒ
์ตธ์๋, ์๋ ํ์ธ์! ์ผ๋จ ๋จผ์ ๋ง์๋๋ฆฌ๊ณ ์ถ์ ์ ์, ์ฌ๊ณ ๊ฐ jpa์ ์ข ์๋์ง ์๋๊ฒ ์ข์ ๊ฒ ๊ฐ์ต๋๋ค!์ค๋ฌด์์๋ jpa๋ฅผ ์ฌ์ฉํ์ง ์๋ ๊ฒฝ์ฐ๋ ๋ง๊ณ , ๊ฐ์ธ์ ์ผ๋ก๋ ์ ํธํ์ง ์์ต๋๋ค.์ ์ฃผ๋ณ์์๋ ๋ฑํ ์ ํธํ๋ ๊ฒฝํฅ์ ๋๋ฌผ๊ธฐ๋ ํ๊ณ , ์ฌ์ฉํ๋๋ผ๋ ๋จ์ crud๋ง ์ฐ๋ ์ฌ๋ก๋ ๋ง์ต๋๋ค.๊ทธ๋ฆฌ๊ณ ๊ฒฐ๊ตญ jpa๊ฐ ๋ง๋ค์ด์ฃผ๋ ๊ฒ๋ sql ์คํฌ๋ฆฝํธ์ผ ๋ฟ์ ๋๋ค. Q. SQL ๋ก ๋ฏธ๋ฆฌ ํ ์ด๋ธ ์์ฑํ๊ฑฐ๋ ์ธ๋ฑ์ค ์ค์ ์ SQL ๋ก ์ง์ ํ๋๋ฐ ์ด์ ๊ฐ ๊ถ๊ธํฉ๋๋ค์ธ๋ฑ์ค ๊ฐ์๊ฒฝ์ฐ jpa ์์ ์ธ์์๋ ์ต์ ์ด ์ ํ์ ์ด๋ผ ๋ฐ๋ก SQL ๋ก ๊ด๋ฆฌํ๋ค๊ณ ๋ฃ๊ธดํ๋๋ฐ ํ ์ด๋ธ๋ ์ค์ ๋ก SQL ์์ ํ๋์ง ๊ถ๊ธํ๊ณ , SQL ๋ก๋ง ํ ์ด๋ธ ์์ฑ ์ธ๋ฑ์ค ๊ด๋ฆฌ๋ฅผ ํ ๊ฒฝ์ฐ ํ์ ์์๋ ์ด๋ค db ๋ง์ด๊ทธ๋ ์ด์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ฃผ๋ก ์ฌ์ฉํ๋์ง๋ ๊ถ๊ธํฉ๋๋ค.ํ ์ด๋ธ์ด๋ ์ธ๋ฑ์ค ์คํฌ๋ฆฝํธ๋ ๋ณ๋ ๋ฌธ์ ๋๋ ํด์ด๋ ์คํฌ๋ฆฝํธ๋ก ๊ด๋ฆฌ๋๋ ๊ฒ์ด ์ผ๋ฐ์ ์ผ ๊ฒ ๊ฐ์ต๋๋ค.ํ๋ฒ ์์ฑ ์ดํ ์๋ฐ ์ฝ๋๋ก ๋จ๊ฒจ๋ ์ด์ ๋ ์๊ณ , ํ์คํ ๋ฆฌ ๊ด๋ฆฌ๋ ์ด๋ ต๊ณ , ์คํ๋ ค ๋ถํ์ํ ์ฝ๋๋ก ๊ฐ๋ ์ฑ๋ง ๋๋น ์ง๊ฒ ๋ ๊ฒ ๊ฐ๋ค์.ddl-auto none์ผ๋ก ์ค์ ํ๋ ์ด์ ๋, ์ด์ ์ค ์๋กญ๊ฒ ๋ฐฐํฌ๋ ์๋ฐ ์ฝ๋๋ก ์ธํด ๊ฐ์์ค๋ ์คํค๋ง ๋๋ ์ธ๋ฑ์ค๊ฐ ๋ณ๊ฒฝ๋๋ฉด ์์คํ ์ ์ฅ์ ๋ฅผ ์ ๋ฐํ ์ ์์ต๋๋ค.db ๋ง์ด๊ทธ๋ ์ด์ ์ ์ด๋ค ์ง๋ฌธ์ ์ฃผ์ ๊ฑด์ง ์ ์ดํด๋ฅผ ๋ชปํ์๋๋ฐ, jpa ์ฝ๋๋ก ์ธ๋ฑ์ค๋ฅผ ์์ฑํ๋ค๊ณ ํด์ ์๋ฐ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๊ฐ ์ธ๋ฑ์ค์ ๋ํ ๋ง์ด๊ทธ๋ ์ด์ ์ ์ํํด์ฃผ๋๊ฑด ์๋๋๋ค. ์ธ๋ฑ์ค ์คํฌ๋ฆฝํธ๋ฅผ ์๋ฐ์์ ๋ง๋ค์ด์ db๋ก ์ ๋ฌํด์ค ๋ฟ, ์ค์ ๋ก๋ ๋ชจ๋ sql ๊ธฐ๋ฐ์ผ๋ก ์คํฌ๋ฆฝํธ๊ฐ ์คํ๋์ด์ db ์์ฒด์์ ์ธ๋ฑ์ค๊ฐ ์์ฑ๋ฉ๋๋ค. Q. ์ฐธ์กฐ๊ด๊ณ๋ฅผ DB ์์ ๊ฑธ์ง์๊ณ ๋ ผ๋ฆฌ์ ์ผ๋ก๋ง ๊ฑธ์์๋ ์ฐธ์กฐํ ์ด๋ธ์๋ํ ์กฐ์ธ์ ์ด๋ค์์ผ๋ก ํ๋์ง ๊ถ๊ธํฉ๋๋ค.MSA ๊ธฐ์ค์ผ๋ก ๋ฐ์ดํฐ๋ฒ ์ด์ค๊ฐ ์์ ๋ถ๋ฆฌ๋ ํ ๋ฐ ์ด๋ค์์ผ๋ก ์กฐ์ธํ๋์?์ถ๊ฐ์ ์ผ๋ก ๋ ผ๋ฆฌ์ ์ผ๋ก ์ฐธ์กฐ์ค๊ณ๊ฐ ๋ ์ํฉ์์ @ManyToOne ์ฌ์ฉ์ด ๊ฐ๋ฅํ์ง๊ถ๊ธํฉ๋๋ค. ์๋ฅผ๋ค๋ฉด Comment ์ํฐํฐ์์ parentCommentId ๊ฐ์ ๊ฐ์ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์๋ ํ ์ด๋ธ์ @ManyToOne ์ ์ฉ์ด ๊ฐ๋ฅํ์ง๊ถ๊ธํฉ๋๋ค.MSA ๊ธฐ์ค์ผ๋ก ๋ฐ์ดํฐ๋ฒ ์ด์ค๊ฐ ๋ถ๋ฆฌ๋๋ฉด, ์ ํ๋ฆฌ์ผ์ด์ ๋ ๋ฒจ์์ ๊ฐ ๋ง์ดํฌ๋ก์๋น์ค๋ง๋ค ํ์ํ ๋ฐ์ดํฐ๋ฅผ ์ง์ํ์ฌ ์กฐ์ธํ๊ฒ ๋ฉ๋๋ค.์ด ๊ฒฝ์ฐ์ ์กฐ์ธ์ ์ํ ๋คํธ์ํฌ ํต์ ๋น์ฉ, ์ง์ ๋น์ฉ, ์๋ต ์ง์ฐ ๋ฑ์ ๋ฌธ์ ๊ฐ ์๊ธฐ๊ฒ ๋๋๋ฐ, ์ด๋ฅผ ํด๊ฒฐํ๋ ๋ฐฉ๋ฒ์ ๋ง์ง๋ง ์ฑํฐ ์ต์ ํ ์ ๋ต์์ ์ผ๋ถ ์ดํด๋ณด๊ฒ ๋๋ค์!@ManyToOne์ ๋ฌผ๋ฆฌ์ ์ธ๋ํค๋ฅผ ๊ฐ์ ํ์ง ์๊ณ , ๋ ผ๋ฆฌ์ ์ฐธ์กฐ๋ผ๊ณ ํ๋๋ผ๋ ์ฌ์ฉํ ์ ์์ต๋๋ค.๋ ผ๋ฆฌ์ ์ฐธ์กฐ๋๋ ์ปฌ๋ผ์ ๋ํด ์ธ๋ฑ์ค๋ง ์ ๊ณ ๋ ค๋๋ฉด ๋ ๊ฒ ๊ฐ๋ค์.ํ์ง๋ง ์์์ JPA์ ๋ํด ํ์์ ์ธ ์ ์ฅ์ ๋ง์ ๋๋ ธ๋ฏ์ด, @ManyToOne๊ณผ ๊ฐ์ ์ฐ๊ด ๊ด๊ณ ์ ๋ ธํ ์ด์ ๋ ์ ์ฌ์ฉํ์ง ์์ต๋๋ค.๊ฐ์ฒด ๊ฐ ์ฐธ์กฐ ๊ฐ๊ฒฐํฉ๊ณผ ์ฝ๋์ ๋ด๋ถ์ ์ธ ์ฟผ๋ฆฌ ์คํ ๋ฐฉ์ ์ดํด์ ๋ณต์กํจ์ ์๋ฐํ๊ธฐ ๋๋ฌธ์ ๊ฐ์ธ์ ์ผ๋ก ์ง์ํ๋ ๋ฐฉํฅ์ด๊ณ , ์ ์ด์ ์ํฐํฐ๊ฐ ์ฝ๋ ๋๋ DB ๋ ๋ฒจ์์ ๋ฌผ๋ฆฌ์ ์ผ๋ก ๊ฒฉ๋ฆฌ๋์ด ์๋ค๋ฉด ์ฐธ์กฐํ ์๋ ์์ต๋๋ค. ์ถฉ๋ถํ ๋ต๋ณ์ด ๋์์์ง ๋ชจ๋ฅด๊ฒ ๋ค์. ํน์ ๋ ๊ถ๊ธํ ์ ์์ผ์๋ฉด ํธํ ๋จ๊ฒจ์ฃผ์ธ์!
- 0
- 2
- 35
Q&A
ํฉํฐ๋ฆฌ ๋ฉ์๋์ response ๊ฐ์ฒด ์ฌ์ฉ ์ด์ ๊ฐ ๊ถ๊ธํฉ๋๋ค!
88diaspora๋, ์๋ ํ์ธ์!์ ๋ฐฐ์์ฃผ๊ณ ๊ณ์๋ค๋ ๊ฐ์ฌํ๋ค์! ๊ตญ๋นํ์ ํ๋ก์ ํธ ํ๋ ๋๋ฅผ ์๊ฐํด๋ณด๋ฉด์ ๋ฃ๊ณ ์๋๋ฐ, ๊ทธ๋๋ ์ํฐํฐ์ ์์ฑ์๋ฅผ ๋ง๋ค์ด์ ์๋น์ค์์ ๊ทธ๋ฅ ์ผ๋๋ฐ ๋ณธ ๊ฐ์์์ ํฉํ ๋ฆฌ ๋ฉ์๋ ํํ๋ฅผ ์ฌ์ฉํ๋ ์ด์ ๊ฐ ๊ถ๊ธํ์ต๋๋ค!! (๊ธฐ์ ์ ์ผ๋ก ๋ ์ง๋ณดํ ํํ์ธ์ง์)๋์ผํ ํด๋์ค๋๋ผ๋ ๊ฐ์ฒด์ ๋ํ ์์ฑ ์๋๋ ๋ชจ๋ ๋ค์ํ ์ ์๋๋ฐ์, ์์ฑ์์ ๋ฌ๋ฆฌ ํฉํ ๋ฆฌ ๋ฉ์๋๋ ๋ค์ด๋ฐ์ผ๋ก ์๋๋ฅผ ๋ช ํํ๊ฒ ๋๋ฌ๋ผ ์ ์์ต๋๋ค.์๋ฅผ ๋ค์ด, User ๊ฐ์ฒด๋ฅผ ์์ฑํ๋ค๋ฉด, ๊ด๋ฆฌ์(User.admin()), ์ผ๋ฐ ์ฌ์ฉ์(User.normal()), ๋จ์ ๋ณํ(User.from(dto)), ์๋ฌ ์์ ๋ํดํธ ๊ฐ์ฒด ์๋ต(User.empty()) ๋ฑ ํฉํ ๋ฆฌ ๋ฉ์๋๋ฅผ ํ์ฉํ๋ฉด ์ฝ๋์ ์๋๊ฐ ๋์ฑ ๋ช ํํ๊ฒ ๋๋ฌ๋๊ฒ ๋ฉ๋๋ค.๋, ๋งค๋ฒ ์๋ก์ด ๊ฐ์ฒด๋ฅผ ์์ฑํ ํ์ ์์ด ๋์ผํ ๊ฐ์ฒด๋ฅผ ์ฌ์ฌ์ฉํด๋ ๋๋ค๋ฉด, ํฉํ ๋ฆฌ ๋ฉ์๋์์ ์บ์๋ ๊ฐ์ฒด๋ฅผ ๋ฐํํ๋ ๋ฑ ๋์ฑ ์ ์ฐํ๊ฒ ํ์ฉํ ์ ์๊ณ ์. (User.empty() ๊ฐ์๊ฑด ์ฑ๊ธํค ๊ฐ์ฒด๋ก ๋ฐํ)๋ค๋ฅธ ์ด์ ์ผ๋ก๋ ํ์ ํ์ ์ผ๋ก ๋ฐํํด์ค ์๋ ์์ต๋๋ค. ์๋ฅผ ๋ค์ด, List๋ ์ธํฐํ์ด์ค์ธ๋ฐ List.of(โaโ)๋ ์ค์ ํ์ ํ์ ์ผ๋ก ๊ตฌํ์ฒด๋ฅผ ๋ง๋ค์ด์ค๋๋ค.์ธ์๋, ํฉํ ๋ฆฌ ๋ฉ์๋์ ์์ฑ์์ ์ฐจ์ด๋ ๊ฒ์ํด ๋ณด์๋ฉด ๋ง์ ์๋ฃ๋ฅผ ์ฐพ์๋ณด์ค ์ ์์ ๊ฒ ๊ฐ๋ค์! ๊ทธ๋ฆฌ๊ณ ๊ฐ์ฒด๋ง๋ค response๋ฅผ ๋ง๋ค์ด์ commentResponse, ArticleLikeResponse ๊ฐ์๊ฑธ ๋ง๋ค์ด api ๋ฐํ์ ์ฌ์ฉํ๋๋ฐ, entity๋ ํ๋๋ ๋ค๋ฅด์ง ์์๋ฐ ๊ตณ์ด ์ด๋ ๊ฒ ์ผ์ผ์ด response ๊ฐ์ฒด๋ฅผ ๊ฐ๊ฐ ๋ง๋ค์ด์ ์ฝ๋๋ฅผ ์ง์ผํ๋์ง ๊ถ๊ธํฉ๋๋ค!!๋ฐ๋์ ๊ทธ๋ด ํ์๋ ์์ง๋ง, ๋ด๋ถ์ ์ธ ๋๋ฉ์ธ ๋ชจ๋ธ๊ณผ ์๋ต ๋ชจ๋ธ์ ๋ณ๋๋ก ๊ด๋ฆฌํ๋๊ฒ ์ ๋ฆฌํ ์ํฉ์ด ๋ง์ต๋๋ค.ํด๋ผ์ด์ธํธ์๊ฒ ๋ถํ์ํ ๋ฐ์ดํฐ๊น์ง ๋๋ฉ์ธ ๋ชจ๋ธ์ ํฌํจ๋ ์ํฉ(๋ณด์, ๋ฐ์ดํฐ ํฌ๊ธฐ, ์ ์ก ์ง์ฐ ๋ฑ ๋ฌธ์ ) ํด๋ผ์ด์ธํธ์ ์๊ตฌ์ฌํญ๊ณผ ๋๋ฉ์ธ ๋ชจ๋ธ์ด ์ผ์น๋์ง ์๋ ์ํฉ(์ฌ๋ฌ ๋ชจ๋ธ์ ์กฐํฉํ๊ฑฐ๋ ์ถ๊ฐ์ ์ธ ๊ฐ๊ณต์ด ํ์ํ ์ ์์)์์ ๊ฐ์ ์ํฉ๋ค์ ์๊ฐํด ๋ณด์๋ฉด ์ดํด๊ฐ ํธํ ๊ฒ ๊ฐ๋ค์!
- 0
- 2
- 27
Q&A
RateLimitTest์ ์ ๋ 2์ด๋ก ํด์ผ ์ ์์ผ๋ก ๋์ค๋๋ฐ
wisehero๋, ์๋ ํ์ธ์! ๋ค, ๋ง์ํ์ ๋๋ก 2์ด๋ก ํด์ผ ์ฑ๊ณตํ๋๊ฒ ์ ์์ ๋๋ค.1์ด๋ ํ๊ฒฝ์ด๋ ์์ ์ ๋ฐ๋ผ ์ฑ๊ณตํ ์๋ ์๊ณ , ์คํจํ ์ ์์ต๋๋ค.์ TTL์ 1์ด์ธ๋ฐ sleep์ 2์ด๋ ํ์ํ์ง ์๋ฌธ์ด์ค ์ ์์ ๊ฒ ๊ฐ์๋ฐ์,์ปดํจํฐ๊ฐ ๋ฌผ๋ฆฌ์ ์ผ๋ก ์๋ฒฝํ๊ฒ ์ ํํ ์๊ฐ์ ๋ณด์ฅํ ์๋ ์์ด์,๋ฏธ์ธํ ์๊ฐ์ ๋ํด์๋ ์ค์ฐจ์ ์ง์ฐ์ด ์๊ธธ ์ ์๊ธฐ ๋๋ฌธ์ ๋๋ค.์ค์ ๋ก๋ ์ ํํ 1์ด๊ฐ ์๋๋ผ, ์ฝ 1์ด๋ผ๊ณ ๋ด์ฃผ์๋ฉด ๋ฉ๋๋ค.๊ทธ๋์ ํ ์คํธ์์๋ ๋ฏธ์ธํ ์๊ฐ ์ฐจ์ ์ํ ํ์ด๋ฐ ๋ฌธ์ ๋ฅผ ํผํ๊ธฐ ์ํด ๊ทธ๋ฅ ์ฌ์ ๋กญ๊ฒ 2์ด sleep์ผ๋ก ์์ฑํ ๊ฒ์ ๋๋ค!
- 0
- 2
- 27
Q&A
์ปค์ ๊ธฐ๋ฐ ํ์ด์ง๋ค์ด์ ๊ณผ ๋ฌดํ ์คํฌ๋กค๋ง
KMC๋, ์๋ ํ์ธ์! ๋ฌดํ ์คํฌ๋กค๋ง์ ๋ ๋ฒ์งธ๋ถํฐ ๋ณดํต ๋์ชฝ id ์ ๋ฐ์ดํฐ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ๋ถ๋ฌ์ค๋ ๋ฐฉ์์ด๋ณดํต ์ปค์ ๊ธฐ๋ฐ ํ์ด์ง๋ค์ด์ ๊ณผ ํฐ ์ฐจ์ด๊ฐ ์๋ ๊ฑด๊ฐ์? (claude ๋ ) ๋ธ๋ก๊ทธ ๋ณด๋ฉด์ ์ด๊ฒ๋ ๋น์ทํ ๊ฐ๋ ์ธ ๊ฑฐ ๊ฐ์์ ์ง๋ฌธ ๋๋ฆฝ๋๋ค.๋ฌดํ ์คํฌ๋กค ์ฌ์ฉ์ฑ์์ ํน์ ๊ธฐ์ค์ (๊ฐ์์์๋ ๋ง์ง๋ง ID)์ผ๋ก ๋ค์ ๋ฐ์ดํฐ๋ฅผ ๋ถ๋ฌ์ค๋ ๊ฒ์ด ์ปค์ ๊ธฐ๋ฐ ํ์ด์ง๋ค์ด์ ์ ๋๋ค! ๋์ผํ ์๋ฏธ์ ๋๋ค.๋ฌดํ ์คํฌ๋กค์ ์ค์ ์ฌ์ฉ์ ์ ์ฅ์์์ ์ฉ์ด์ด๊ณ , ๋ด๋ถ์ ์ธ ๊ตฌํ ๊ด์ ์์๋ ์ปค์ ๊ธฐ๋ฐ์ผ๋ก ๋์ํฉ๋๋ค.๋ฌผ๋ก , ๋ฌดํ ์คํฌ๋กค์ด ํญ์ ์ปค์ ๊ธฐ๋ฐ์ผ๋ก ๋์ํด์ผํ๋ค๋ ๊ฒ์ ์๋๊ณ , offset/limit ๋ฐฉ์์ผ๋ก๋ ๋ฌดํ ์คํฌ๋กค๋ง์ ๊ตฌํํ ์๋ ์์ต๋๋ค. ๋ค๋ง, ๋ฌดํ ์คํฌ๋กค๋ง์ด๋ผ ํ๋ฉด ์ปค์ ๊ธฐ๋ฐ ๊ตฌํ์ ์ผ๋ฐ์ ์ผ๋ก ์ฌ์ฉํ๊ธด ํ๋ค์. ์ด๋ ๊ฒ ์ํฐํฐ์ ์ธ๋ฑ์ค๋ฅผ ๋ง๋ค์ด์ ์ฌ์ฉํ๋์ง ๊ถ๊ธํฉ๋๋ค. ๊ฐ์์์ ์ฒ๋ผ SnowFlake๋ ๋ณดํต ์ ๋ ๊ฒ ์ธ๋ฑ์ค๋ฅผ ๋ง๋ค์ด์ ํ์ฉํ๋์ง๋ ๊ถ๊ธํฉ๋๋ค.Snowflake๋ ๊ทธ์ ์ค๋ฆ์ฐจ์ ์๋ฅผ ์ถฉ๋์์ด ๋น ๋ฅด๊ฒ ์์ฑํ๊ธฐ ์ํ ์๊ณ ๋ฆฌ์ฆ์ด๊ณ , ์ด๋ฌํ ํน์ฑ์ผ๋ก ์ธํด primary key๋ก ์ฌ์ฉ๋ ๋ฟ ์ธ๋ฑ์ค์๋ ๋ฌด๊ดํฉ๋๋ค.์๋ฌดํผ ์ํฐํฐ์ ์ธ๋ฑ์ค, ์ฐ๊ด ๊ด๊ณ ๋ฑ์ ์ ๋ ธํ ์ด์ ์ ์ง๋ฌธ์ฃผ์ ๊ฒ์ผ๋ก ์ดํดํ๋๋ฐ์.๊ทธ๋ ๊ฒ ํด๋ ๋๊ณ , ์ํด๋ ๋ฉ๋๋ค. ๊ฐ์ ๋ ๋ถ๋ถ๋ ์๊ณ ์์ ๋กญ๊ฒ ํ๋ฉด ๋ฉ๋๋ค.ํ์ง๋ง ์กฐ๊ธ ๋ ์ค๋ฌด ๊ด์ ์์ ๋ณธ๋ค๋ฉด, ์ธ๋ฑ์ค๋ฅผ ์ฝ๋์ ์ ๋ ธํ ์ด์ ์ผ๋ก ์ ์ํ๋ ๊ฒฝ์ฐ๋ ์ ์์ต๋๋ค.๋ฌผ๋ก , ์์ฒ๋ผ ์ฌ์ฉํ๋ ์ฌ๋๋ ์๊ฒ ์ง๋ง, ํ๋ฒ ์ฌ์ฉ๋๊ณ ๋ง ์ฝ๋์ด๊ณ DDL์ ๋ณ๋ ์คํฌ๋ฆฝํธ ๋๋ ๋ฌธ์๋ก ๊ด๋ฆฌํ๊ฑฐ๋ db์ ์์ฑ๋๊ฑธ ์ง์ ๋ณด๋๊ฒ ์ผ๋ฐ์ ์ธ ๊ฒ ๊ฐ๋ค์.์ฐ๊ด ๊ด๊ณ ์ ๋ ธํ ์ด์ ๋ ๊ฐ์ฒด ๊ฐ์ ๊ฐ๊ฒฐํฉ๋๋ฉด ์ ์ง๋ณด์๋ ์ด๋ ต๊ณ , ์ ์ด์ ๋ถ์ฐ ํ๊ฒฝ์ด๋ผ๋ฉด ๊ฐ์ฒด ์ฐธ์กฐ ์์ฒด๊ฐ ์ด๋ ค์ธ ์ ์์ด์ ๊ตณ์ด ์ฌ์ฉํ์ง ์๋ค์.์ ์ ์ฃผ๋ณ์ ๊ฒฝ์ฐ๋ฅผ ๋ณด๋ฉด, ์ ์ด์ JPA ์์ฒด๋ฅผ ์์ฐ๋ ๊ฒฝ์ฐ๊ฐ ๋์ฑ ์ผ๋ฐ์ ์ด๋ผ๊ณ ์๊ฐ๋๋ค์.
- 0
- 2
- 42
Q&A
์น์ 3์ 22๋ฒ์งธ ๊ฐ์์์ ์๋ฌ๋ฐ์ํฉ๋๋ค..
MinKyu Song๋, ์๋ ํ์ธ์! ์ฝ๋๊ฐ ์๋ ๋ก์ปฌ ํ๊ฒฝ์ ๊ดํ ๋ถ๋ถ์, ์ ๊ฐ ์ ํํ ์์ธ์ ์ถ์ ํ ์ ์๋ค๋ณด๋ ์ง์ ํด๊ฒฐํด ๋๋ฆฌ๊ธฐ์ ์ด๋ ค์์ด ์๋ค์..! ์ด์ ์ RedisTestContainerSupport ์ฒ์ ๋ง๋ค๊ณ ํ ์คํฌ ์ํํ๋๊ฑด ์ ์์ ์ผ๋ก ๋์๊ฐ๊ณ ์๊ณ ,SplitShardedBloomFilterRedisHandlerTest.mightContain ํ ์คํธ๋ง ์คํจํ๊ณ ์๋ค๋ ๋ง์์ด์ค๊น์? ๋ก์ปฌ์ ๋์ปค๊ฐ ์ ์คํ๋๊ณ ์๋์ง ๋ค์ ํ๋ฒ ์ ๊ฒํด๋ณด์๊ณ ,๊ตฌ๊ธ์ Could not find a valid Docker environment ๊ฒ์ํด๋ณด๋ฉด ๋น์ทํ ์ฌ๋ก๋ค์ด ๋์ค๋๋ฐ ํ๋์ฉ ํ์ธํด๋ณด์๊ฒ ์ด์?
- 0
- 4
- 49
Q&A
๊ฒ์๊ธ ์์ฑ ๋ก์ง์์ ์ค๋ฅ ๋ฐ์์ redis ๊ฒ์๊ธ ์ ๋๋๋ฆฌ๊ธฐ
songso0412๋, ์๋ ํ์ธ์! ๊ฐ์์์๋ ๊ฒ์๊ธ ์์ฑ๊ณผ ๊ฒ์๊ธ ์์ ์ ํฉ์ฑ์ ์ํด ๋ชจ๋ rdb์ ์ ์ฅํ๊ณ ๋จ์ผํ ํธ๋์ญ์ ์ผ๋ก ๊ด๋ฆฌํ๋ ์ ๋ต์ ์ทจํ๊ณ ์๋๋ฐ์,๊ทธ์ ๋ณ๊ฐ๋ก redis์ ๊ฒ์๊ธ ์๋ฅผ ์ ์ฅํ๋ ์ํฉ์ ๋ง์ํ์๋ ๊ฒ์ผ๊น์?rdb ํธ๋์ญ์ ์ด ์ปค๋ฐ๋ ํ์ redis ์ฆ๊ฐ๊ฐ ์คํจํ๊ฑฐ๋,redis ์ฆ๊ฐ๋ ํ์ rdb ํธ๋์ญ์ ์ด ๋กค๋ฐฑ๋๋ ๊ฒฝ์ฐ๊ฐ ์๊ฒ ๋ค์. ์ ํฉ์ฑ์ ๋ฐ๋์ 100% ์๋ฒฝํ๊ฒ ์ง์ผ์ผํ๋์ง์ ๋ํด์๋ ๊ณ ๋ฏผํด๋ณผ ์ ์์ ๊ฒ ๊ฐ์ต๋๋ค.์ด๋ฌํ ์ํฉ์ด๋ผ๋ฉด ํธ๋์ญ์ ์ด ๋กค๋ฐฑ๋ ๋์ ์์ธ๋ฅผ ์บ์นํด์, ์ ํ๋ฆฌ์ผ์ด์ ์์ redis ์นด์ดํธ๋ฅผ ๋ค์ ๊ฐ์์์ผ์ฃผ๋ฉด ๋ฉ๋๋ค.๋ฌผ๋ก ์ด๋ ๊ฒ ํ๋ฉด redis ๊ฐ์ ์ฝ๋๊ฐ ์คํจํ ์๋ ์๊ธฐ ๋๋ฌธ์ ์ ํฉ์ฑ์ ์๋ฒฝํ๊ฒ ๋ณด์ฅ๋์ง ์์ต๋๋ค.ํ์ง๋ง ์ค๋ฅ๋ก ์ธํด ์ ํฉ์ฑ์ด ๊นจ์ง๋ ์ํฉ์ด ํํ๊ฒ ๋ฐ์ํ๋ ๊ฒ๋ ์๋๊ณ , ์ด๋ค ๋ฐ์ดํฐ์ธ์ง์ ๋ฐ๋ผ์ ๊นจ์ง๋๊ฒ ๋ฌธ์ ๋์ง ์์ ์๋ ์์ต๋๋ค.ํ์ฒ๋ฆฌ ๋ณด์ ์ ๋ฃ๋ ์ ๋ต๋ ๊ฒธํ ์ ์๋ ๊ฒ์ด๊ณ ์. ๊ฐ์ง๊ฐ ๋์์ ๋, ๋ฌธ์๊ฐ ๋ค์ด์์ ๋, ์ฃผ๊ธฐ์ ์ผ๋ก ๊ฒ์ฌ(์ํ๋ง ๋ฑ)ํ ๋ ๋ฑ ๋ฐ์ดํฐ์ ์ ํฉ์ฑ์ ๋ค๋ฆ๊ฒ ๋ณด์ ์์ผ์ค๋ ์์คํ ์ด์์ ํฌ๊ฒ ๋ฌธ์ ๊ฐ ์์ ์ ์์ต๋๋ค.๋ฌดํผ ์ด๋ ๊ฒ ์ ํ๋ฆฌ์ผ์ด์ ์์ ๋ณด์ ํธ๋์ญ์ ์ ์ํํด์ ํด๊ฒฐํ ์ ์์ต๋๋ค. (๋ณ๋์ ํธ๋์ญ์ ๋๋ ๋ก์ง์ผ๋ก ์ ํฉ์ฑ์ ๋ง์ถ๋ค๋ ์๋ฏธ์ ๋๋ค. ํ์ง๋ง ๋ณด์ ํธ๋์ญ์ ์ ๋ํ ์คํจ์ ๋ํ ๊ณ ๋ ค๋ ํ์ํ๋ค์.) ๊ทผ๋ฐ ์ ํฉ์ฑ์ด ์ฃผ์ํ๋ค๋ฉด, rdb ํธ๋์ญ์ ์ผ๋ก ๋ฌถ์ด๋ด๋๊ฒ ๊ฐ์ฅ ๊ฐ๋จํ๊ณ ํ์คํ ํด๊ฒฐ์ฑ ์ผ ์ ์์ต๋๋ค.์ ํฉ์ฑ์ ์ํ ๋ค๋ฅธ ๋ฐฉ๋ฒ์ผ๋ก๋, ๋ง์ง๋ง ์ฑํฐ์์ ์๊ฐํ๋ Transactional Outbox ์ ๋ต๊ณผ ์ปจ์๋จธ์ ๋ฉฑ๋ฑ ๋๋ ์ค๋ณต ๋ฐฉ์ง ์ ๋ต์ ์ทจํ ์๋ ์์ต๋๋ค.๊ฒ์๊ธ ์์ฑ ํธ๋์ญ์ ์ด ์๋ฒฝํ๊ฒ ์ข ๋ฃ๋์์ ๋์ ์ด๋ฒคํธ๋ฅผ ์ ์ค ์์ด ๋ณด๋ด๊ณ , ์ปจ์๋จธ์์๋ ๊ฒ์๊ธ ์๋ฅผ ์ฆ๊ฐ์์ผ์ค๋๋ค. ๋ฌผ๋ก ์ค๋ณต ์ด๋ฒคํธ์ ๋ํ ๋ฌธ์ ๊ฐ ๋ฐ์ํ ์ ์๊ธฐ ๋๋ฌธ์ ์ผ์ ์๊ฐ ๋ฒํผํด๋๊ฑฐ๋ ์ฒ๋ฆฌํ ์ด๋ฒคํธ์ ๋ํด์๋ ๊ด๋ฆฌํ๋ ์ ๋ต์ ๊ฒธํด์ผ๊ฒ ๋ค์. ์ด๋ ํ ์ฌ์ ๋ก redis์ ๊ด๋ฆฌํ์๋ ค๋ ์๋์ธ์ง ์ ํํ ํ์ ํ๊ฑด ์๋์ง๋ง,์ ๋ผ๋ฉด ์ ํฉ์ฑ์ด ํ์ํ ๋ฐ์ดํฐ๋ฅผ rdb/redis์ ๋ถ๋ฆฌ ์ ์ฅํ๋ฉด์๊น์ง ์ธํ๋ผ์ ์ด์ ๋ณต์ก๋๋ฅผ ๋์ผ ๋ฐ์์ผ rdb ๋จ์ผ ํธ๋์ญ์ ์ ์ด์ฉํ ๊ฒ ๊ฐ์ต๋๋ค.์กฐํ ์ฑ๋ฅ์ ๋ํ ์ฐ๋ ค๊ฐ ์๋ค๋ฉด(๊ณต๊ฐ์ ๋ํ ์ฐ๋ ค๋ ์คํ๋ ค ์์ ๊ฒ์ด๊ณ ์), rdb์ ๋จผ์ ์ฐ๊ธฐ ์์ ์ ํ ๋ค์ redis์ ์ฝ๊ธฐ์ฉ์ผ๋ก ๋ฐ๋ก ๋ฐ์ดํฐ๋ฅผ ์บ์ํด๋ ์๋ ์๋ ๊ฒ์ด๊ณ ์. ๋ฑํ ์ ๋ต์ ์๊ณ ์์คํ ์ด์ ๋ฐฉ์์ ๋ฐ๋ผ์ ํด๊ฒฐ์ฑ ๋ ๋ค์ํ ์ ์์ด์, ์ํฉ์ ์๋ง๊ฒ ์ ๋นํ ๋ฐฉ๋ฒ์ ์ฐพ์๋๊ฐ๋๊ฒ ์ข์ ๊ฒ ๊ฐ๋ค์!
- 0
- 2
- 52
Q&A
http://localhost:8080/cache-strategy/{{cacheStrategy}}/items ํธ์ถ ์ NPE ์๋ฌ ๋ฌธ์
๋ฆฌ๋๋, ์๋ ํ์ธ์!์ด๋ฒ์๋ ์ ์๊ฐํด ์ฃผ์ ์ ๊ฐ์ฌํฉ๋๋ค. CGLIB์ด ์๋ JDK Proxy(์ธํฐํ์ด์ค์ ํ๋ผ๋ฏธํฐ ์ ๋ณด๋ฅผ ๋ณด์กดํ์ง ๋ชปํจ)๊ฐ ๋์ํ๋ ๊ฒ์ผ๋ก ๋ณด์ด๊ณ , ๋ก์ปฌ IDE ์ปดํ์ผ ํ๊ฒฝ์์ ์ฐจ์ด๊ฐ ์๋๊ฑด์ง ์ถ๊ตฐ์..! KukeCacheKeyGenerator.genKey ๋ฉ์๋์์ ์๋ ์ถ๋ ฅ ๊ฒฐ๊ณผ ๊ณต์ ํด์ฃผ์ค ์ ์์๊น์?System.out.println(joinPoint.getThis().getClass()); ํด๊ฒฐ ๋ฐฉ๋ฒ์ผ๋ก๋,์ธํ ๋ฆฌ์ ์ด Settings > Build, Execution, Deployment > Compiler > Java Compiler ๋ฉ๋ด์์,Javac Options > Additional command line parameters์๋ค๊ฐ +parameters๋ฅผ ์ถ๊ฐํด๋ณด์๊ฒ ์ด์?class ํ์ผ์ ํ๋ผ๋ฏธํฐ๋ช ์ ๋ณด์กดํ๋ ์ค์ ์ ๋๋ค. ์ ๋ฐฉ๋ฒ์ด ์๋๋ฉด, build.gradle์ ์๋ ์ค์ ์ ์ถ๊ฐํด๋ณด์๊ฑฐ๋,tasks.withType(JavaCompile) { options.compilerArgs += ["-parameters"] } KukeCacheApplication์ @EnableAspectJAutoProxy(proxyTargetClass = true)๋ฅผ ์ถ๊ฐํด๋ณด์๋ฉด ๋ ๊ฒ ๊ฐ์ต๋๋ค! ํน์ ์ธ ๊ฐ์ง ๋ฐฉ๋ฒ ๋ชจ๋ ์๋๋ค๋ฉด ๋ค์ ๋ง์ ๋ถํ๋๋ฆฝ๋๋ค!
- 1
- 2
- 72
Q&A
๋ฉํฐ ๋ชจ๋์ด ์๋ MSA ํ๊ฒฝ์์ common
newsungk7๋, ์๋ ํ์ธ์! ๋ง์ ์ฃผ์ ๋ด์ฉ์ ์ ๋ต๋ ์๊ณ ๊ตฌํํ๊ธฐ ๋๋ฆ์ ๋๋ค.๊ฐ์ฅ ๋จผ์ ๊ณ ๋ คํด๋ณผ๋งํ ๋ถ๋ถ์, ๊ตณ์ด ์ธ์ด ๋ ๋ฒจ์์๊น์ง ๋ถ๋ฆฌํ ํ์์ฑ์ด ์์์ง ๊ณ ๋ฏผํด๋ณผ ์ ์์ ๊ฒ ๊ฐ์ต๋๋ค.์ฌ๋ฌ ํ๋ก์ ํธ ๊ฐ์ ๋ฐ๋์ ๊ณตํต ์ฝ๋๋ก ๋น๋ํด์ผ ํ๋ค๋ฉด, ๊ทธ๋ฅ ๋จ์ผ ํ๋ก์ ํธ์์ ๋ชจ๋๋ก ์ฝ๋๋ฅผ ๊ณต์ ํ๋๊ฒ ์์ฐ์ฑ์ด ํจ์ฌ ์ฌ๋ผ๊ฐ๊ณ ๊ด๋ฆฌ๋ ํธํ๋ฏ๋ก, ๊ตณ์ด ๋ถ๋ฆฌํ ์ด์ ๋ ์๊ณ ๋ถ๋ฆฌํ์ง ์๋๊ฒ ์ ๋ฆฌํ ์ธก๋ฉด์ด ๋ง์ต๋๋ค. ํน์ ๊ธฐ๋ฅ์ ์ํ ํนํ๋ ์ธ์ด ๋๋ ํ๋ ์์ํฌ๋ก ๋ถ๋ฆฌํด์ ๋ง๋ค๊ณ ์ถ๋ค๋ฉด, ์์ ๋ณ๋์ ํ๋ซํผ์ ๋ง๋ค์ด์ API/์ด๋ฒคํธ ๋ฑ์ ๋ณ๋ ํ๋กํ ์ฝ์ ์ด์ด์ค ์๋ ์์ต๋๋ค. ํต์ฌ ๋น์ฆ๋์ค ๋๋ฉ์ธ์ ์ด๋ฌํ ํ๋ซํผ์ ํ์ฉํด์ ํ์ํ ๊ธฐ๋ฅ์ ๊ตฌํํ๋ฉด ๋๋ ๊ฒ์ด๊ณ ์. ์ด์ฒ๋ผ ํ๋ฉด API์ ๊ฐ์ ์ธํฐํ์ด์ค ๋ ๋ฒจ์์ ๋ด๋ถ ์ธ์ด/ํ๋ ์์ํฌ ๋ฑ์ ์ถ์ํ๋๋ฏ๋ก ๋ฌธ์ ๋ ๋ถ๋ถ์ ์์ต๋๋ค. ๊ฐ ์ธ์ด๋ง๋ค ๊ณตํต ๊ธฐ๋ฅ์ผ๋ก ํธํ๋๋ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ๋ง๋ค์ด์ ์ ๊ณตํ ์๋ ์์ ๊ฒ ๊ฐ์ต๋๋ค.๊ด๋ จํด์ ๋ฐฐํฌ๋ ๊ฒ๋ค๋ ์ด๋ฏธ ๋ง์ด ๋ณด์ จ์ ๊ฒ ๊ฐ๊ณ ์.๋ถ๊ฐํ ๋ถ๋ถ์ ์๋์ง๋ง ๋ผ์ด๋ธ๋ฌ๋ฆฌ ๊ฐ๋ฐ ๋ฐ ๋ฐฐํฌ ๋น์ฉ๋ ํ์ํ๊ณ , ์ฌ์ฉ์ฒ๊ฐ ๋ง๋ค๋ฉด ๋ฒ์ ๋ฐ ํธํ์ฑ ๋ฑ ๊ด๋ฆฌ๊ฐ ๊ฝค๋ ๋ณต์กํ๊ณ ๊ท์ฐฎ์ ๋ถ๋ถ์ ๋๋ค. ๋, ์ค๋ณต ์ฝ๋๋ฅผ ํญ์ ๊ณตํตํํ ํ์๋ ์๊ธฐ๋ ํฉ๋๋ค. ๋ฑํ ์ค๋ณต์ด ์ฐ๋ ค๋์ง ์๊ณ ์ง์์ ์ผ๋ก ๊ด๋ฆฌ๋์ด์ผ ํ๋ ์ฝ๋๊ฐ ์๋๋ผ๋ฉด, ์ฝ๋ ์ค๋ณต์ผ๋ก ๊ด๋ฆฌํ๋ ๊ฒ๋ ๋ฌธ์ ๋์ง ์๋ ์ํฉ์ด ๋ง์ต๋๋ค. ๋ง์ฝ ์ฌ๋ฌ ์ธ์ด/ํ๋ ์์ํฌ๊ฐ ๋ชจ๋ ๋ค๋ฅผ ์ ์๋ ํ๋ก์ ํธ์์ ๊ณตํต์ผ๋ก ๋์ ์ํค๋ ค๋ ์ฝ๋๋ฅผ ๋์ผํ๊ฒ ๋ง๋ค๊ณ ์ถ๋๋ผ๋, ์ธ์ด๊ฐ ๋ค๋ฅด๊ธฐ ๋๋ฌธ์ ๊ฐ ํ๋ก์ ํธ๋ง๋ค ๋ค๋ฅด๊ฒ ๊ตฌํ๋ ์๋ ์์ต๋๋ค.๋์ผํ ๊ธฐ๋ฅ์ผ๋ก ๋ง๋ค์ด๋ด๋๋ผ๋, ์ ์ด์ ์ด๋ฏธ ๋ค๋ฅธ ์ฝ๋์ ๋๋ค.๋ด๋ถ ๋์์ด ๋ณต์กํ ์๋ก ๊ธฐ๋ฅ์ ๋ํ ๋ช ์ธ๋ฅผ ์ผ๊ด๋๊ฒ ์ ์งํ๋ ๊ฒ๋ ์ด๋ ค์์ง ์ ์์ต๋๋ค. ์๋ฌดํผ ํ ์๊ตฌ์ฌํญ์ธ ๋จ์ผํ ๊ฒ์ํ ์๋น์ค๋ฅผ ์ด๋ฃจ๋ ์์คํ ์ด๋ผ๋ฉด, ๊ฒ์ํ์ด๋ผ๋ ์์ ๋๋ฉ์ธ ๋ด์์ ๋ถ๋ฅ๋๋ ๊ฒ์๊ธ/๋๊ธ ํ์ ๋๋ฉ์ธ ๋จ์๊น์ง ๋ณ๋ ํ๋ก์ ํธ๋ก ๋ถ๋ฆฌ๋ฅผ ํด์ผ ํ๋ ๊ฒ์ธ์ง ํ์์ฑ๋ถํฐ ๋ค์ ๊ฒํ ๋ฅผ ํด๋ณด๊ฒ ๋ ๊ฒ ๊ฐ์ต๋๋ค.์ ์ด๋ ํ ๋จ์์ ๋ถ๋ฆฌ ๋๋ ํ๋ซํผํ์ ํ์์ฑ ๋ฑ์ด ์์ ๋์ ํ๋ก์ ํธ ๋ถ๋ฆฌ๋ฅผ ๊ณ ๋ฏผํด๋ณด๋ฉด ์ข์ ๊ฒ ๊ฐ๋ค์!
- 0
- 2
- 71
Q&A
2Depth ๊ฐ์ ๋์ค ๊ถ๊ธํ ์ ์์ด์!!
๋ฐ๋ ฅ๋, ์๋ ํ์ธ์!์ ์๊ฐํด์ฃผ์ ์ ๊ฐ์ฌํฉ๋๋ค. A๊ฐ ๋ ผ๋ฆฌ ์ญ์ ๋์ด์๋๋ผ๋, B๋ฅผ ์ญ์ ํ๋ค๊ณ ํด์ A๊ฐ ๋ฌผ๋ฆฌ ์ญ์ ๋์ง ์์ต๋๋ค.์์ง C๊ฐ ๋จ์์๊ธฐ ๋๋ฌธ์ ๋๋ค.์ง๊ธ ์ฝ๋์์ ๋์์ด ๊ทธ๋ ๊ฒ ์ฒ๋ฆฌ๋๊ณ ์๋ค๋ ๋ง์์ด์ค๊น์?!
- 0
- 2
- 42
Q&A
์ค๋ฉ์ ๋ํด์ ๊ถ๊ธ์ ์์ต๋๋ค.
hahahl๋, ์๋ ํ์ธ์! ์ผ๋ฐ์ ์ผ๋ก ์ค๋ฉ์ด๋ผ ํจ์ ์ํ ๋ถํ ์ ๋ํ ์ฉ์ด๋ก ์ฌ์ฉ๋์ง๋ง, ๊ฐ๋ ์ ์ผ๋ก ์์ง ๋ถํ ์ด๋๊ฒ ์๋๊ฑด ์๋๋๋ค. (๊ณต์์ ์ธ ์ฉ์ด์ ๋ํด์ ๋ฌป๋ ๊ฒ์ด๋ผ๋ฉด, it ๋ถ์ผ๊ฐ ์ฉ์ด์ ๊ทธ์ ๋ํ ํด์์ด ๋ค์ํ ์ ์๊ณ ๋น๊ณต์์ ์ธ ์ฉ์ด๋ ํํ ์ฌ์ฉ๋๋ค๋ณด๋, ๊ทธ ๋ถ๋ถ์ ๋ํด์ ์ ๋ ๋ชจ๋ฅด๊ฒ ์ต๋๋ค.)์ํ(ํ ์ด๋ธ๋ก ์น๋ฉด ๋ ์ฝ๋ ๋จ์)์ผ๋ก ๋ถ์ฐํ๋๊ฒ ์๋, ์์ง(ํ ์ด๋ธ๋ก ์น๋ฉด ์ปฌ๋ผ ๋จ์)์ผ๋ก ๋ถ์ฐํ๋ฉด ๊ทธ๊ฒ์ด ์์ง ๋ถํ ์ธ ๊ฒ์ด๊ณ ์.์ฌ์ค 1:1 ํ ์ด๋ธ ๊ด๊ณ๋ก ์ ๊ทํํ๋ค๋ผ๋ ๊ฐ๋ ๊ณผ ๋ฑํ ๋ค๋ฅผ ๊ฒ ์๋ค๊ณ ์๊ฐ๋๊ธฐ๋ ํ๋ค์. (๋ฌผ๋ก ์๋ฐํ ๋ฐ์ง๋ฉด ๋ค๋ฅด์ง๋ง์)ํน๋ณํ ์ค๋ช ๋๋ฆด๋งํ๊ฒ ์๋ ๋ถ๋ถ๋ ์๋๊ณ ์ฉ์ด์ ๋ํด์ ๊น๊ฒ ์ง๊ณ ๋์ด๊ฐ์ผํ ๋ถ๋ถ์ ์๋๋ผ, ํฌ๊ฒ ์ ๊ฒฝ ์์ฐ์๊ณ ๋์ด๊ฐ์ ๋ ๊ด์ฐฎ์ ๊ฒ ๊ฐ๋ค์!
- 0
- 2
- 80





