MapleStory Finger Point

๐Ÿ”ด WEB/๐Ÿ”ด GraphQL 1

[GraphQL] ๊ธฐ์ดˆ ๊ฐœ๋…, ๋ฌธ๋ฒ•

GraphQL ์ด๋ž€?GraphQL ์€ Facebook ์—์„œ ๊ฐœ๋ฐœ๋œ ์˜คํ”ˆ์†Œ์Šค ๋ฐ์ดํ„ฐ ์ฟผ๋ฆฌ์ž„API๋ฅผ ํšจ์œจ์ ์œผ๋กœ ๊ด€๋ฆฌํ•˜๊ณ  ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Œ  GraphQL ์™œ ์‚ฌ์šฉํ• ๊นŒ?๊ธฐ์กด REST API ์˜ ๋‹จ์ ์„ ๋ณด์™„ํ•˜๊ธฐ ์œ„ํ•ด์„œ ์‚ฌ์šฉํ•จ   GraphQL ์š”์ฒญ๋ฐฉ์‹REST API : ํŠน์ • ์—”๋“œํฌ์ธํŠธ(URL)์— ์š”์ฒญ์„ ๋ณด๋‚ธ๋‹ค.GraphQL : ๋‹จ์ผ ์—”๋“œํฌ์ธํŠธ๋ฅผ ํ†ตํ•ด ํ•„์š”ํ•œ ๋ฐ์ดํ„ฐ๋ฅผ ์ฟผ๋ฆฌ๋กœ ์š”์ฒญ (ํ•œ๋ฒˆ์— ์š”์ฒญ ๊ฐ€๋Šฅ)  GraphQL ๋ฐ์ดํ„ฐ ๋ฐ˜ํ™˜ ๋ฐฉ์‹REST API : ๋ถˆํ•„์š”ํ•œ ๋ฐ์ดํ„ฐ๊นŒ์ง€ ๊ณผ๋‹ค์š”์ฒญ(Over-fetching) , ์—ฌ๋Ÿฌ ์—”๋“œํฌ์ธํŠธ๋ฅผ ํ˜ธ์ถœํ•ด์•ผ ๋ฐ์ดํ„ฐ๋ฅผ ๋ณด์„ ์ˆ˜ ์žˆ๋Š” ๋ถ€์กฑํ•œ ์š”์ฒญ(Under-fetching)GraphQL : ์ •ํ™•ํ•˜๊ฒŒ ๋ฐ์ดํ„ฐ ์š”์ฒญ ๊ฐ€๋Šฅ, ํ•œ๋ฒˆ์˜ ์š”์ฒญ์œผ๋กœ ์›ํ•˜๋Š” ๋ชจ๋“  ๋ฐ์ดํ„ฐ ํฌํ•จ ๊ฐ€๋Šฅ  GraphQL ์—”๋“œํฌ์ธํŠธ..