๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

Study/Java91

[TIL] Project Reactor ๐Ÿ™Œ๐Ÿป Project Reactor - Spring Reactive Web Application ๊ฐœ๋ฐœ์— ์žˆ์–ด ํ•ต์‹ฌ ์—ญํ• ์„ ๋‹ด๋‹น - Spring MVC ๊ธฐ๋ฐ˜์˜ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜๊ณผ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ ํด๋ผ์ด์–ธํŠธ์˜ ์š”์ฒญ์„ ์ฒ˜๋ฆฌํ•˜๋Š” ๊ณผ์ •์„ ๊ฑฐ์นจ → ์ฐจ์ด์ ์€ ์š”์ฒญ ์ฒ˜๋ฆฌ ๊ณผ์ • ์–ด๋”˜๊ฐ€์—์„œ Reactor๊ฐ€ ํ•ต์‹ฌ์ ์ธ ์—ญํ• ์„ ํ•จ ๐Ÿ“ Reactor - ๋ฆฌ์•กํ‹ฐ๋ธŒ ์ŠคํŠธ๋ฆผ์ฆˆ ํ‘œ์ค€ ์‚ฌ์–‘์„ ๊ตฌํ˜„ํ•œ ๊ตฌํ˜„์ฒด ์ค‘ ํ•˜๋‚˜ - Spring 5 ๋ฒ„์ „๋ถ€ํ„ฐ ์ง€์›ํ•˜๋Š” ๋ฆฌ์•กํ‹ฐ๋ธŒ ์Šคํƒ์— ํฌํ•จ๋˜์–ด ๋ฆฌ์•กํ‹ฐ๋ธŒํ•œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์œผ๋กœ ๋™์ž‘ํ•˜๋Š”๋ฐ ์žˆ์–ด ํ•ต์‹ฌ์ ์ธ ์—ญํ•  ๋‹ด๋‹น ๐Ÿ“ Reactor ํŠน์ง• (1) ๋ฆฌ์•กํ‹ฐ๋ธŒ ์ŠคํŠธ๋ฆผ์ฆˆ๋ฅผ ๊ตฌํ˜„ํ•œ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ (2) Non-Blocking ํ†ต์‹ ์„ ์ง€์›ํ•จ (3) Publisher ํƒ€์ž…์œผ๋กœ Mono[0|1]์™€ Flux[N]์ด๋ผ๋Š” ๋‘ ๊ฐ€์ง€ ํƒ€์ž… ์ œ๊ณต - 0๊ณผ .. 2022. 8. 11.
[TIL] ๋ฆฌ์•กํ‹ฐ๋ธŒ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๐Ÿ™๐Ÿป ๋ฆฌ์•กํ‹ฐ๋ธŒ ํ”„๋กœ๊ทธ๋ž˜๋ฐ - ์ „ํ†ต์ ์ธ ๋ช…๋ นํ˜• ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๋ฐฉ์‹(ex. Spring MVC) ๊ณผ ๋‹ฌ๋ฆฌ ์„ ์–ธํ˜• ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๋ฐฉ์‹์„ ์‚ฌ์šฉ ๐Ÿ’ก ๋ฆฌ์•กํ‹ฐ๋ธŒ : Reactive - ๋ฐ˜์‘์„ ํ•˜๋Š”, ๋ฐ˜์‘์„ ๋ณด์ด๋Š” ๐Ÿ“ ๋ฆฌ์•กํ‹ฐ๋ธŒ ์‹œ์Šคํ…œ : Reactive System - ๋ฐ˜์‘์„ ์ž˜ํ•˜๋Š” ์‹œ์Šคํ…œ - ์ฆ‰, ๋ฆฌ์•กํ‹ฐ๋ธŒ ์‹œ์Šคํ…œ์„ ์ด์šฉํ•˜๋Š” ํด๋ผ์ด์–ธํŠธ์˜ ์š”์ฒญ์— ๋ฐ˜์‘์„ ์ž˜ํ•˜๋Š” ์‹œ์Šคํ…œ - ํด๋ผ์ด์–ธํŠธ์˜ ์š”์ฒญ์— ๋Œ€ํ•œ ์‘๋‹ต ๋Œ€๊ธฐ ์‹œ๊ฐ„์„ ์ตœ์†Œํ™” ํ• ์ˆ˜ ์žˆ๋„๋ก ์š”์ฒญ ์“ฐ๋ ˆ๋“œ๊ฐ€ ์ฐจ๋‹จ ๋˜์ง€ ์•Š๊ฒŒํ•จ์œผ๋กœ์จ ํด๋ผ์ด์–ธํŠธ์—๊ฒŒ ์ฆ‰๊ฐ์ ์œผ๋กœ ๋ฐ˜์‘ํ•˜๋„๋ก ๊ตฌ์„ฑ๋œ ์‹œ์Šคํ…œ โ–ช๏ธ ๋ฆฌ์•กํ‹ฐ๋ธŒ ์‹œ์Šคํ…œ ํŠน์ง• โ—ฝ๏ธ MEANS - ๋ฆฌ์•กํ‹ฐ๋ธŒ ์‹œ์Šคํ…œ์—์„œ ์‚ฌ์šฉํ•˜๋Š” ์ปค๋ฎค๋‹ˆ์ผ€์ด์…˜ ์ˆ˜๋‹จ ๐Ÿ”น Message Driven : ๋ฉ”์‹œ์ง€ ๊ธฐ๋ฐ˜ ํ†ต์‹  - ๋ฆฌ์•กํ‹ฐ๋ธŒ ์‹œ์Šคํ…œ์—์„œ๋Š” ๋ฉ”์‹œ์ง€ ๊ธฐ๋ฐ˜ ํ†ต์‹ ์„ ํ†ตํ•ด ์—ฌ๋Ÿฌ ์‹œ์Šคํ…œ ๊ฐ„์—.. 2022. 8. 10.
[TIL] ์šด์˜ ์ „๋žต (2) ๐Ÿ™๐Ÿป TOMCAT - Apache์‚ฌ์—์„œ ๊ฐœ๋ฐœํ•œ ์„œ๋ธ”๋ฆฟ ์ปจํ…Œ์ด๋„ˆ๋งŒ ์žˆ๋Š” ์˜คํ”ˆ์†Œ์Šค ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์„œ๋ฒ„ ๐Ÿ“ Tomcat ํŠน์ง• - ์ž๋ฐ” ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์œ„ํ•œ ๋Œ€ํ‘œ์ ์ธ ์˜คํ”ˆ ์†Œ์Šค : Web Application Server(WAS) - ์˜คํ”ˆ์†Œ์Šค์ด๊ธฐ ๋•Œ๋ฌธ์— ๋ผ์ด์„ ์Šค ๋น„์šฉ ๋ถ€๋‹ด ์—†์ด ์‚ฌ์šฉ ๊ฐ€๋Šฅ - ๋…๋ฆฝ์ ์œผ๋กœ๋„ ์‚ฌ์šฉ๊ฐ€๋Šฅํ•˜๋ฉฐ Apache ๊ฐ™์€ ๋‹ค๋ฅธ ์›น ์„œ๋ฒ„์™€ ์—ฐ๋™ํ•˜์—ฌ ํ•จ๊ป˜ ์‚ฌ์šฉ ๊ฐ€๋Šฅ - ์ž๋ฐ” ์„œ๋ธ”๋ฆฟ ์ปจํ…Œ์ด๋„ˆ์— ๋Œ€ํ•œ ๊ณต์‹ ๊ตฌํ˜„์ฒด๋กœ ์Šคํ”„๋ง ๋ถ€ํŠธ์— ๋‚ด์žฅ๋˜์–ด ๋ณ„๋„์˜ ์„ค์น˜ ๊ณผ์ •์ด ํ•„์š” ์—†์Œ ๐Ÿ’ก Servlet : ์„œ๋ธ”๋ฆฟ - ํด๋ผ์ด์–ธํŠธ์˜ ์š”์ฒญ์„ ์ฒ˜๋ฆฌํ•˜๊ณ  ๊ทธ ๊ฒฐ๊ณผ๋ฅผ ๋ฐ˜ํ™˜ํ•˜๋Š” ์›น ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๊ธฐ์ˆ  - ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์š”์ฒญ์„ ํ•˜๋ฉด ๊ทธ์— ๋Œ€ํ•œ ๊ฒฐ๊ณผ๋ฅผ ๋‹ค์‹œ ์ „์†กํ•ด์ฃผ๋Š” ์—ญํ•  - ์„œ๋ธ”๋ฆฟ์„ ํ†ตํ•ด ์š”์ฒญ ๋ฉ”์‹œ์ง€๋ฅผ ์ฝ๊ณ  ์‘๋‹ต์„ ๋งŒ๋“ค์–ด ์คŒ ๐Ÿ’ก Servlet .. 2022. 8. 9.
[TIL] ์šด์˜ ์ „๋žต (1) ๐Ÿค˜๐Ÿป Proxy Server : ํ”„๋ก์‹œ ์„œ๋ฒ„ - ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์„œ๋ฒ„์™€ ์†Œํ†ตํ•  ๋•Œ ์„œ๋ฒ„์— ๋ฐ”๋กœ ์ ‘๊ทผํ•˜์ง€ ์•Š๊ณ  ์ž์‹ ์„ ํ†ตํ•ด ์„œ๋ฒ„์— ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•ด์ฃผ๋Š” ๋Œ€๋ฆฌ ์„œ๋ฒ„ - ์ผ๋ฐ˜ ์‚ฌ์šฉ์ž๋Š” ์ง€์—ญ์ด ์ œํ•œ๋˜์–ด ์žˆ๋Š” ์„œ๋น„์Šค๋ฅผ ์ด์šฉํ•˜๊ธฐ ์œ„ํ•ด ์šฐํšŒํ•˜๊ฑฐ๋‚˜ ์บ์‹œ๋ฅผ ํ†ตํ•ด ๋” ๋น ๋ฅธ ์ด์šฉ์„ ์œ„ํ•ด ํ”„๋ก์‹œ ์„œ๋ฒ„๋ฅผ ์‚ฌ์šฉ ๐Ÿ“ํ”„๋ก์‹œ ์„œ๋ฒ„ ์ข…๋ฅ˜ โ‘  Forward Proxy - ํ”„๋ก์‹œ ์„œ๋ฒ„๊ฐ€ ํด๋ผ์ด์–ธํŠธ์— ๊ฐ€๊นŒ์ด ์žˆ๋Š” ๊ฒฝ์šฐ - ํด๋ผ์ด์–ธํŠธ ๊ฐ€๊นŒ์ด์— ์œ„์น˜ํ•œ ํ”„๋ก์‹œ ์„œ๋ฒ„๋กœ ํด๋ผ์ด์–ธํŠธ๋ฅผ ๋Œ€์‹ ํ•˜์—ฌ ์„œ๋ฒ„์— ์š”์ฒญ ์ „๋‹ฌ - ์ฃผ๋กœ ์บ์‹ฑ์„ ์ œ๊ณตํ•˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋งŽ์•„ ์‚ฌ์šฉ์ž๊ฐ€ ๋น ๋ฅธ ์„œ๋น„์Šค ์ด์šฉ ๊ฐ€๋Šฅํ•˜๋„๋ก ๋„์™€์คŒ ๐Ÿ“ Forward Proxy ์žฅ์  โ–ธ ์บ์‹ฑ์„ ํ†ตํ•œ ๋น ๋ฅธ ์„œ๋น„์Šค ์ด์šฉ ๊ฐ€๋Šฅ - ํด๋ผ์ด์–ธํŠธ๋Š” ์„œ๋ฒ„๊ฐ€ ์•„๋‹Œ ํ”„๋ก์‹œ ์„œ๋ฒ„์™€ ์†Œํ†ต - ์—ฌ๋Ÿฌ ํด๋ผ์ด์–ธํŠธ๊ฐ€ ๋™์ผํ•œ ์š”์ฒญ์„ ๋ณด๋‚ด.. 2022. 8. 9.
[TIL] Github Actions ๐Ÿ‘๐Ÿป Github Actions - ๊นƒํ—ˆ๋ธŒ๊ฐ€ ๊ณต์‹์ ์œผ๋กœ ์ œ๊ณตํ•˜๋Š” ๋นŒ๋“œ, ํ…Œ์ŠคํŠธ ๋ฐ ๋ฐฐํฌ ํŒŒ์ดํ”„๋ผ์ธ์„ ์ž๋™ํ™” ํ•  ์ˆ˜ ์žˆ๋Š” CI / CD ํ”Œ๋žซํผ - ๋ ˆํฌ์ง€ํ† ๋ฆฌ์—์„œ Pull Request๋‚˜ Push ๊ฐ™์€ ์ด๋ฒคํŠธ๋ฅผ ํŠธ๋ฆฌ๊ฑฐ๋กœ Github ์ž‘์—… ์›Œํฌํ”Œ๋กœ์šฐ๋ฅผ ๊ตฌ์„ฑํ•  ์ˆ˜ ์žˆ์Œ * Work Flow : ์›Œํฌํ”Œ๋กœ์šฐ - ํ•˜๋‚˜ ์ด์ƒ์˜ ์ž‘์—…์ด ์‹คํ–‰๋˜๋Š” ์ž๋™ํ™” ํ”„๋กœ์„ธ์Šค - ๊ฐ ์ž‘์—…์€ ์ž์ฒด ๊ฐ€์ƒ ๋จธ์‹  ๋˜๋Š” ์ปจํ…Œ์ด๋„ˆ ๋‚ด๋ถ€์—์„œ ์‹คํ–‰๋จ - .yml / .yaml ํŒŒ์ผ์— ์˜ํ•ด ๊ตฌ์„ฑ๋จ - ํ…Œ์ŠคํŠธ, ๋ฐฐํฌ ๋“ฑ ๊ธฐ๋Šฅ์— ๋”ฐ๋ผ ์—ฌ๋Ÿฌ ๊ฐœ์˜ ์›Œํฌํ”Œ๋กœ์šฐ๋ฅผ ๋งŒ๋“ค ์ˆ˜ ์žˆ์Œ - ์ƒ์„ฑ๋œ ์›Œํฌํ”Œ๋กœ์šฐ๋Š” .github/workflows์— ์œ„์น˜ํ•จ - ๋น„๊ณต๊ฐœ ๋ ˆํฌ์ง€ํ† ๋ฆฌ์˜ ๊ฒฝ์šฐ Github Actions๊ฐ€ ์ž‘๋™ํ•  ๋•Œ์˜ ์šฉ๋Ÿ‰๊ณผ ์‹œ๊ฐ„์ด ์ œํ•œ๋˜์–ด ์žˆ์Œ - ๊ณต๊ฐœ ๋ ˆํฌ์ง€ํ† ๋ฆฌ์˜ ๊ฒฝ.. 2022. 8. 8.
[TIL] ๋ฐฐํฌ ์ž๋™ํ™” ๐Ÿ™Œ๐Ÿป ๋ฐฐํฌ ์ž๋™ํ™” : Automated Deployment - ํ•œ ๋ฒˆ์˜ ํด๋ฆญ ํ˜น์€ ๋ช…๋ น์–ด ์ž…๋ ฅ์„ ํ†ตํ•ด ์ „์ฒด ๋ฐฐํฌ ๊ณผ์ •์„ ์ž๋™์œผ๋กœ ์ง„ํ–‰ํ•˜๋Š” ๊ฒƒ ๐Ÿ’ก ๋ฐฐํฌ ์ž๋™ํ™”๊ฐ€ ํ•„์š”ํ•œ ์ด์œ  ? - ์ˆ˜๋™์ ์ด๊ณ  ๋ฐ˜๋ณต์ ์ธ ๋ฐฐํฌ ๊ณผ์ •์„ ์ž๋™ํ™”ํ•จ์œผ๋กœ์จ ์‹œ๊ฐ„์ด ์ ˆ์•ฝ๋จ - ํœด๋จผ ์—๋Ÿฌ๋ฅผ ๋ฐฉ์ง€ํ•  ์ˆ˜ ์žˆ์Œ (ํœด๋จผ ์—๋Ÿฌ ๋ฐœ์ƒ ๊ฐ€๋Šฅ์„ฑ์„ ๋‚ฎ์ถœ ์ˆ˜ ์žˆ์Œ) * ํœด๋จผ ์—๋Ÿฌ : Human Error - ์‚ฌ๋žŒ์ด ์ˆ˜๋™์ ์œผ๋กœ ๋ฐฐํฌํ•˜๋Š” ๊ณผ์ •์—์„œ ์ƒ๊ธฐ๋Š” ์‹ค์ˆ˜ - ๊ทธ ์ „์˜ ๋ฐฐํฌ์™€ ๋‹ค๋ฅด๊ฒŒ ์ง„ํ–‰ํ•˜๊ฑฐ๋‚˜ ํŠน์ • ๊ณผ์ •์„ ์ƒ๋žตํ•˜์—ฌ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•˜๋Š” ๊ฒƒ ๐Ÿ“ ํŒŒ์ดํ”„ ๋ผ์ธ : Pipeline ๐Ÿ“ AWS ๊ฐœ๋ฐœ์ž ๋„๊ตฌ * AWS์—๋Š” ๊ฐœ๋ฐœ์ž ๋„๊ตฌ ์„ธ์…˜์ด ์กด์žฌ → ์ด๋ฅผ ํ™œ์šฉํ•˜์—ฌ ๋ฐฐํฌ ์ž๋™ํ™” ํŒŒ์ดํ”„๋ผ์ธ ๊ตฌ์ถ• ๊ฐ€๋Šฅ โ‘  CodeCommit - Source ๋‹จ๊ณ„๋ฅผ ๊ตฌ์„ฑํ•  ๋•Œ CodeCommit .. 2022. 8. 8.
[TIL] Docker ๐Ÿ™Œ๐Ÿป ์ปจํ…Œ์ด๋„ˆ ๋ฐฉ์‹ - ์‹คํ–‰ ํ™˜๊ฒฝ์— ๊ตฌ์• ๋ฐ›์ง€ ์•Š๊ณ  ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์‹คํ–‰ ๊ฐ€๋Šฅ - ์ปจํ…Œ์ด๋„ˆ ๊ธฐ์ˆ ์€ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์ปจํ…Œ์ด๋„ˆ ๋‚ด์— ๊ตฌ์„ฑํ•จ → ์ปจํ…Œ์ด๋„ˆ์—์„œ ์‹คํ–‰์ค‘์ธ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์–ด๋–ค ์˜์กด์„ฑ๋„ ๊ณต์œ ํ•˜์ง€ ์•Š๊ณ  ๊ฐ์ž ๊ณ ์œ ์˜ ์˜์กด์„ฑ์„ ํฌํ•จํ•˜๊ณ  ์žˆ์Œ ๐Ÿ’ก ์ปจํ…Œ์ด๋„ˆ - ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์˜์กด์„ฑ, ๋„คํŠธ์›Œํฌ ํ™˜๊ฒฝ, ํŒŒ์ผ ์‹œ์Šคํ…œ์— ๊ตฌ์• ๋ฐ›์ง€ ์•Š๊ณ  ๋„์ปค๋ผ๋Š” ๊ธฐ์ˆ  ์œ„์— ์‹คํ–‰๋  ์ˆ˜ ์žˆ๋„๋ก ๋งŒ๋“  ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์ƒ์ž ๐Ÿ“ ์ปจํ…Œ์ด๋„ˆ ๋ฐฉ์‹(๊ธฐ์ˆ )์˜ ์žฅ์  : ์˜์กด์„ฑ ์ถฉ๋Œ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•ด ์คŒ โ‘  ๊ฐœ๋ฐœ๊ณผ ๋ฐฐํฌ ํ™˜๊ฒฝ์„ ์ผ์น˜์‹œํ‚ด โ‘ก ์ˆ˜ํ‰ ํ™•์žฅ์„ ์‰ฝ๊ฒŒ ํ•ด์คŒ โ‘ข ๊ฐ ์„œ๋ฒ„์— ์ƒˆ๋กœ์šด ๋‚ด์šฉ์„ ๋ฐฐํฌํ•˜๊ธฐ ์‰ฝ๊ฒŒ ๋งŒ๋“ค์–ด์คŒ ๐Ÿ‘‰๐Ÿป ์ปจํ…Œ์ด๋„ˆ ๊ธฐ์ˆ ์„ ์ด์šฉํ•˜๋ฉด ์ฒ ์ €ํ•˜๊ฒŒ ์‹คํ–‰ ํ™˜๊ฒฝ์ด ๊ฒฉ๋ฆฌ๋˜์–ด ์žˆ์–ด ์˜์กด์„ฑ ์ถฉ๋Œ์ด ์ผ์–ด๋‚˜์ง€ ์•Š์Œ ์ฆ‰, ํ•œ ์ปดํ“จํ„ฐ์— ์—ฌ๋Ÿฌ ๋Œ€์˜ ์ปจํ…Œ์ด๋„ˆ๊ฐ€ ์กด์žฌํ•˜๊ณ  ์ด๋ฅผ ํ†ตํ•ด ์• ํ”Œ.. 2022. 8. 4.
[TIL] Cloud ์šด์˜ ํ™˜๊ฒฝ ๐Ÿ‘‹๐Ÿป Cloud Computing : ํด๋ผ์šฐ๋“œ ์ปดํ“จํŒ… : ์ธํ„ฐ๋„ท ๊ธฐ๋ฐ˜์˜ ์ปดํ“จํŒ… - ์ธํ„ฐ๋„ท ์ƒ์˜ ๊ฐ€์ƒํ™”๋œ ์„œ๋ฒ„์— ํ”„๋กœ๊ทธ๋žจ์„ ๋‘๊ณ  ํ•„์š”ํ•  ๋•Œ๋งˆ๋‹ค ์ปดํ“จํ„ฐ๋‚˜ ์Šค๋งˆํŠธํฐ ๋“ฑ์— ๋ถˆ๋Ÿฌ์™€ ์‚ฌ์šฉํ•˜๋Š” ์„œ๋น„์Šค ๐Ÿ”ธ ๊ธฐ์กด ์„œ๋ฒ„์˜ ์š”์ฒญ์— ๋Œ€ํ•œ ์ˆ˜์šฉ โ‘  ๊ฐ™์€ ๊ณต๊ฐ„์— ๋” ๋งŽ์€ ์ปดํ“จํ„ฐ ์ถ”๊ฐ€ - ๊ฐ™์€ ๊ณต๊ฐ„์— ๋” ๋งŽ์€ ์ปดํ“จํ„ฐ๋ฅผ ์ œ๊ณตํ•˜์—ฌ ํ•œ ๋Œ€๊ฐ€ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ๋Š” ์š”์ฒญ์„ ์—ฌ๋Ÿฌ ๋Œ€๊ฐ€ ๋‚˜๋ˆ„๋Š” ๋ฐฉ์‹ โ‘ก ์ปดํ“จํ„ฐ ์„ฑ๋Šฅ ์—…๊ทธ๋ ˆ์ด๋“œ - ์ปดํ“จํ„ฐ ํ•œ ๋Œ€์˜ ์„ฑ๋Šฅ์„ ๋†’์ด๋Š” ๋ฐฉ์‹ ๐ŸŒŸ ๊ธฐ์กด ์„œ๋ฒ„์˜ ํ•œ๊ณ„ โ‘  ์ฃผ๊ธฐ์ ์ธ ์œ ์ง€ ๊ด€๋ฆฌ ํ•„์š” - ์ธ๋ ฅ ๋ฐ ๋น„์šฉ ํˆฌ์ž…๋˜์–ด์•ผ ํ•จ → ๊ธฐ๊ธฐ ์ˆ˜๊ฐ€ ๋งŽ์•„์งˆ ์ˆ˜๋ก ์ธ๋ ฅ ๋น„์šฉ ์ฆ๊ฐ€ โ‘ก ๊ณต๊ฐ„์˜ ํ•œ๊ณ„ - ํ•œ ๊ณต๊ฐ„์— ์ปดํ“จํ„ฐ๋ฅผ ๋ฐฐ์น˜ํ•ด๋‘๊ณ  ํ•„์š”ํ•  ๋•Œ๋งˆ๋‹ค ์ถ”๊ฐ€์ ์ธ ์ปดํ“จํ„ฐ๋ฅผ ์ถ”๊ฐ€ํ•˜์—ฌ ์ˆ˜์šฉ ๋Šฅ๋ ฅ ํ–ฅ์ƒ ์‹œํ‚ด → ๊ณต๊ฐ„์ด ๋ถ€์กฑํ•ด์ ธ ์ปดํ“จํ„ฐ๋ฅผ ๋” ์ด์ƒ ๋ฐฐ์น˜ํ•  ์ˆ˜ .. 2022. 8. 3.
[TIL] OAuth2 ์ธ์ฆ ๐Ÿ‘๐Ÿป OAuth2 - ํด๋ผ์ด์–ธํŠธ - ์„œ๋ฒ„ - ์ œ 3์˜ ์„œ๋น„์Šค ์‚ฌ์ด์˜ ์ธ์ฆ - ์ธ์ฆ์„ ์œ„ํ•œ ํ‘œ์ค€ ํ”„๋กœํ† ์ฝœ์˜ ํ•œ ์ข…๋ฅ˜ - ๋ณด์•ˆ๋œ ๋ฆฌ์†Œ์Šค์— ์ ‘๊ทผ(์—‘์„ธ์Šค)ํ•˜๊ธฐ ์œ„ํ•ด ํด๋ผ์ด์–ธํŠธ์—๊ฒŒ ๊ถŒํ•œ์„ ์ œ๊ณตํ•˜๋Š” ํ”„๋กœ์„ธ์Šค๋ฅผ ๋‹จ์ˆœํ™”ํ•˜๋Š” ํ”„๋กœํ† ์ฝœ - ์ฆ‰, ์ด๋ฏธ ์‚ฌ์šฉ์ž ์ •๋ณด๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ๋Š” ์›น ์„œ๋น„์Šค ( ์นด์นด์˜ค, ๊นƒํ—™, ๊ตฌ๊ธ€, ํŽ˜์ด์Šค๋ถ ๋“ฑ )์—์„œ ์‚ฌ์šฉ์ž ์ธ์ฆ์„ ๋Œ€์‹ ํ•ด์ฃผ๊ณ  ์ ‘๊ทผ ๊ถŒํ•œ์— ๋Œ€ํ•œ ํ† ํฐ์„ ๋ฐœ๊ธ‰ํ•œ ํ›„ ์ด๋ฅผ ์ด์šฉํ•ด์„œ ๋‚ด ์„œ๋ฒ„์—์„œ ์ธ์ฆ์ด ๊ฐ€๋Šฅํ•ด์ง - ์ธ์ฆ๋งŒ ๋‹ค๋ฅธ ์„œ๋น„์Šค์— ๋งก๊ธฐ๊ณ  ์ธ๊ฐ€๋Š” ๋‚ด ์„œ๋ฒ„์—์„œ ! โ‘  ํŽธ๋ฆฌํ•œ ์ธ์ฆ โ‘ก ๋ณด์•ˆ์ƒ ์ด์  ๐Ÿ’ก Resource Owner - ์•ก์„ธ์Šค ์ค‘์ธ ๋ฆฌ์†Œ์Šค์˜ ์œ ์ € - ๊ทธ๋ฆผ์—์„œ User๋ฅผ ์˜๋ฏธ ( User์˜ Facebook ๊ณ„์ •์„ ์ด์šฉํ•ด์„œ APP์— ๋กœ๊ทธ์ธ ํ•  ๊ฒฝ์šฐ User๋Š” Resource Owner) ๐Ÿ’ก .. 2022. 8. 3.