๐Ÿ’ปBackend/๋ผ์ด์ง•์บ ํ”„

    [๋ผ์ด์ง•์บ ํ”„] 4์ฃผ์ฐจ ํ•™์Šต ์ •๋ฆฌ 2 | SpringBoot Tamplate

    Web Server - ์›น ์„œ๋ฒ„(Web server)๋Š” HTTP ๋˜๋Š” HTTPS๋ฅผ ํ†ตํ•ด ์›น ๋ธŒ๋ผ์šฐ์ €์—์„œ ์š”์ฒญํ•˜๋Š” HTML ๋ฌธ์„œ๋‚˜ ์˜ค๋ธŒ์ ํŠธ(์ด๋ฏธ์ง€ ํŒŒ์ผ ๋“ฑ)์„ ์ „์†กํ•ด์ฃผ๋Š” ์„œ๋น„์Šค ํ”„๋กœ๊ทธ๋žจ์„ ๋งํ•œ๋‹ค. - 1์ฃผ์ฐจ ํ•™์Šต์—์„œ ์ •๋ฆฌํ•œ ๊ทธ๋ฆผ ํ‘œํ˜„์œผ๋กœ๋Š” B.L(Backend Language) ๊ตฌ๊ฐ„์ด๋‹ค - ์ข…๋ฅ˜๋กœ๋Š” Spring, Spring-boot, node.js, php ๋“ฑ์ด ์žˆ๋‹ค. - ๋ผ์ด์ง• ์บ ํ”„์—์„œ 4์ฃผ์ฐจ์— node.js ๋‚˜ SpringBoot ์ค‘์— ์„ ํƒํ•˜๊ฒŒ ๋œ๋‹ค - ํ•„์ž๋Š” ๊ตญ๋‚ด์—์„œ ๊ฐ€์žฅ ๋งŽ์ด ์‚ฌ์šฉ๋œ๋‹ค๊ณ  ์•Œ๋ ค์ง„ JAVA ๊ธฐ๋ฐ˜ SpringBoot ๋ฅผ ์„ ํƒํ–ˆ๊ธฐ ๋•Œ๋ฌธ์— ํ•ด๋‹น ํƒฌํ”Œ๋ฆฟ ์„ค๋ช… ๊ธ€์ด ๋  ๊ฒƒ์ด๋‹ค. SpringBoot Tamplate - ํ•ด๋‹น ๊ธ€ PRACTICE์— Github Springboot ํ…œํ”Œ๋ฆฟ README..

    [๋ผ์ด์ง•์บ ํ”„] 3์ฃผ์ฐจ ํ•™์Šต ์ •๋ฆฌ 2 | ERD ์„ค๊ณ„ | RDS

    ERD ์„ค๊ณ„ [ํฌ์ธํŠธ] 1. ์„ค๊ณ„ํ•  ํ™”๋ฉด์„ ์ฐธ๊ณ ํ•˜๋ฉด์„œ 2. ์ค‘๋ณต์ œ๊ฑฐ : ์ •๊ทœํ™” 3. ๋ฆฌ์†Œ์Šค ๋‹จ์œ„๋กœ ์„ค๊ณ„ ํ˜‘์—…์—์„œ๋Š” ์ค‘๋ณต์„ ํ—ˆ์šฉํ•˜๋”๋ผ๋„ ์œ ์—ฐํ•˜๊ฒŒ ์ž‘์„ฑํ•  ํ•„์š”๊ฐ€ ์žˆ์Œ [๋‹จ๊ณ„] ์‹œ์Šคํ…œ ๋ถ„์„ -> ๋…ผ๋ฆฌ -> ๋ฌผ๋ฆฌ [Example] Instagram ์˜ˆ์ œ๋กœ ์ธ์Šคํƒ€๊ทธ๋žจ์˜ ERD๋ฅผ ์„ค๊ณ„ํ•ด๋ณด๊ธฐ! ์‹œ์Šคํ…œ ๋ถ„์„ ์ž‘์„ฑํ•˜๊ฒŒ ๋  ํ™”๋ฉด์—์„œ ํ•„์š”ํ•œ ๋ชจ๋“  ์ •๋ณด๋ฅผ ์ž‘์„ฑํ•˜๋ฉด์„œ ์ „์ œ ๊ตฌ์กฐ๋ฅผ ์žก์•„๋ณด๋Š” ๋‹จ๊ณ„์ž…๋‹ˆ๋‹ค. ํฌ๊ฒŒ ์œ ์ € ์ •๋ณด, ๊ฒŒ์‹œ๋ฌผ, ๋Œ“๊ธ€ ํ™”๋ฉด์—์„œ ํ•„์š”ํ•œ ์ •๋ณด๋ฅผ ์ถ”์ถœํ•ด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. ์œ ์ € ์ •๋ณด : id, ์ด๋ฆ„, ํ”„๋กœํ•„์‚ฌ์ง„, ๊ฒŒ์‹œ๋ฌผ ์ˆ˜, ํŒ”๋กœ์šฐ ์ˆ˜, ํŒ”๋กœ์›Œ ์ˆ˜, ์†Œ๊ฐœ ๊ธ€, Web site ๋งํฌ, ๊ฒŒ์‹œ๋ฌผ, ๊ฒŒ์‹œ๋ฌผ ์‚ฌ์ง„, ์˜ฌ๋ฆฐ ์‹œ๊ฐ„ ๊ฒŒ์‹œ๋ฌผ : id, ๊ฒŒ์‹œ๋ฌผ ์‚ฌ์ง„, ์ข‹์•„์š” ์ •๋ณด, ๊ฒŒ์‹œ๋ฌผ ๊ธ€, ํ”„๋กœํ•„ ์‚ฌ์ง„, ์˜ฌ๋ฆฐ ์‹œ๊ฐ„ ๋Œ“๊ธ€ : id, ๋Œ“๊ธ€, ๋Œ€๋Œ“..

    [๋ผ์ด์ง•์บ ํ”„] 4์ฃผ์ฐจ ํ•™์Šต ์ •๋ฆฌ 1 | Backend Language | HTTP | REST API | Query String/ Path Variable

    ํ•™์Šต ๊ณผ์ • : ์„œ๋ฒ„(1, 2์ฃผ์ฐจ) โžก๏ธ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค(3์ฃผ์ฐจ) โžก๏ธ Backend Language(4์ฃผ์ฐจ, ํ˜„์žฌ) ๋ชฉ์ฐจ HTTP REST API Query String vs Path Variable RESTful GET vs POST PATCH vs PUT PRACTICE HTTP - 2์ฃผ์ฐจ ์„œ๋ฒ„์—์„œ ์–ธ๊ธ‰ํ–ˆ๋˜ HTTP๊ธฐ์–ต ๋‚˜์‹œ๋‚˜์š”? - HTTP๋Š” ์ปดํ“จํ„ฐ๊ฐ„ ๋„คํŠธ์›Œํฌ ํ†ต์‹ ์„ ์œ„ํ•œ ํ”„๋กœํ† ์ฝœ(๊ทœ์ •)์ž…๋‹ˆ๋‹ค. - ์ „์†ก ๋‹จ์œ„๋Š” ํŒจํ‚ท์œผ๋กœ Header ์™€ Body๋กœ ๋‚˜๋ˆ ์ง‘๋‹ˆ๋‹ค. - Header๋Š” ์ˆ˜์‹ ์ž์˜ IP ์ •๋ณด๋ฅผ, Body๋Š” ์ „์†กํ•˜๋ ค๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ๋‹ด๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. - ๋Œ€ํ‘œ์  ๋ฉ”์†Œ๋“œ๋Š” GET/ POST/ PATCH/ PUT/ DELETE ๋กœ CRUD ๊ธฐ๋ฐ˜์ด๋ผ๊ณ  ํ•  ์ˆ˜ ์žˆ๋‹ค. REST API - REST(Representat..

    [๋ผ์ด์ง•์บ ํ”„] 3์ฃผ์ฐจ ํ•™์Šต ์ •๋ฆฌ 1 | DATABASE | SQL

    DataBase - 1, 2์ฃผ์ฐจ์— ์ด์–ด์„œ ์‹๋‹น์œผ๋กœ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ์ดํ•ดํ•ด๋ณด์ž - ์†๋‹˜(Client) ↔๏ธ ์ข…์—…์›(Server) ์š”๋ฆฌ์‚ฌ(BackEnd Language) ๋ƒ‰์žฅ๊ณ (DataBase) - ์œ„์™€๊ฐ™์ด ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋Š” ํด๋ผ์ด์–ธํŠธ์—๊ฒŒ ์š”๋ฆฌ ์š”์ฒญ์— ์‘๋‹ตํ•˜๊ธฐ ์œ„ํ•ด ํ•„์š”ํ•œ ์žฌ๋ฃŒ ์ƒ์ž๋ผ๊ณ  ์ดํ•ดํ•˜๋ฉด ๋˜๊ฒ ๋‹ค. Query/ SQL - ์ด ๋•Œ BackEnd Language(B.L)๊ฐ€ DataBase(DB)์—๊ฒŒ ๋ฐ์ดํ„ฐ๋ฅผ ๋‹ฌ๋ผ๊ณ  ์š”์ฒญํ•˜๋Š” ๋‹จ์œ„๋Š” Query์ด๋‹ค - ์ด Query๋ฅผ ์œ„ํ•œ ์–ธ์–ด๊ฐ€ SQL, Structured Query Language ์ด๋‹ค. - ์ฆ‰ ์š”๋ฆฌ์‚ฌ๋Š” SQL์„ ์‚ฌ์šฉํ•˜์—ฌ ๋ƒ‰์žฅ๊ณ ์—์„œ ์›ํ•˜๋Š” ์žฌ๋ฃŒ๋ฅผ ๊บผ๋‚ผ ์ˆ˜ ์žˆ๋‹ค. - SQL ใ„ด DDL (Data Definition Language) : ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์˜ ๊ฐ์ฒด๋ฅผ ๊ด€๋ฆฌํ•˜..

    [๋ผ์ด์ง•์บ ํ”„] 2์ฃผ์ฐจ ํ•™์Šต ์ •๋ฆฌ | Server ์‹ฌํ™” | ํ”„๋กœํ† ์ฝœ(Protocol) | HTTP(S) | IP/Domain/Port | ํฌํŠธํฌ์›Œ๋”ฉ(Portfowarding)

    ์ง€๋‚œ ๊ธ€ Server ๊ฐœ์š”์— ์ด์–ด์„œ Server ์‹ฌํ™”ํ•™์Šต ๋‚ด์šฉ์ž…๋‹ˆ๋‹ค ํ”„๋กœํ† ์ฝœ (Protocol) - ์ปดํ“จํ„ฐ ๋˜๋Š” ๊ธฐ๊ธฐ๊ฐ„ ํ†ต์‹ ์„ ์œ„ํ•œ ๋ฐ์ดํ„ฐ ์ „์†ก ๋ฐฉ์‹ ๊ทœ์•ฝ - HTTP, HTTPS, MySQL, SSH, FTP ๋“ฑ์˜ ํ”„๋กœํ† ์ฝœ์ด ์กด์žฌํ•œ๋‹ค. * HTTP(S) : ์›น ํ†ต์‹ ์„ ์œ„ํ•œ ํ”„๋กœํ† ์ฝœ (HTTP + TLS ์ ์šฉ = HTTPS), HTTP : 80/ HTTPS : 443 * MySQL : DB ํ†ต์‹ ์„ ์œ„ํ•œ ํ”„๋กœํ† ์ฝœ * SSH : ๊ด€๋ฆฌ์ž์šฉ ํ”„๋กœํ† ์ฝœ * (S)FTP : ํŒŒ์ผ ์ „์†ก์šฉ ํ”„๋กœํ† ์ฝœ - ์›น ํŽ˜์ด์ง€์˜ url์„ ๋ณด๋ฉด https:// ๊ฐ€ ์•ž์— ๋ถ™์–ด ์žˆ์„ ๊ฒƒ์ด๋‹ค. ์ด๋Š” https ํ”„๋กœํ† ์ฝœ์„ ์‚ฌ์šฉํ•˜์—ฌ ํ†ต์‹ ํ•˜๊ฒ ๋‹ค๋Š” ์˜๋ฏธ๋ฅผ ํฌํ•จํ•˜๊ณ  ์žˆ๋‹ค. HTTP/ HTTPS - ์ธํ„ฐ๋„ท ํ†ต์‹ ์„ ์œ„ํ•œ ํ”„๋กœํ† ์ฝœ - OSI 7๊ณ„์ธต ์ค‘ 3..

    [๋ผ์ด์ง•์บ ํ”„] 1์ฃผ์ฐจ ํ•™์Šต ์ •๋ฆฌ | Server ๊ฐœ์š”

    Server - Serve + er = ์„œ๋น„์Šค ์ œ๊ณต์ž - ์‹๋‹น์— ๋น„์œ ํ–ˆ์„ ๋•Œ, ์ข…์—…์› ๋˜๋Š” ํ‚ค์˜ค์Šคํฌ์˜ ์—ญํ•  - ํ”„๋ก ํŠธ์— ์ƒ์ฃผํ•˜๋ฉฐ ๋ฉ”๋‰ด ์ˆ™์ง€, ์†๋‹˜๊ณผ ์ฃผ๋ฐฉ์„ ์—ฐ๊ฒฐํ•ด์ฃผ๋Š” ๋งค๊ฐœ์ฒด - Client์˜ ์š”์ฒญ(request)์— ์‘๋‹ต(response)ํ•˜๋Š” ๋งค๊ฐœ์ฒด - Client Server Backend Language DataBase : Server Client - Server์—๊ฒŒ ์š”์ฒญ(request)ํ•˜๋Š” ๋งค๊ฐœ์ฒด - Server : Client = 1 : N ์˜ ๊ด€๊ณ„๋ฅผ ๊ฐ–๋Š”๋‹ค. - Server๊ฐ€ Client ์˜ ์—ญํ• ์„ ํ•˜๊ฒŒ ๋˜๋Š” ๊ฒฝ์šฐ๋„ ์žˆ๋‹ค. ex) ์†Œ์…œ ๋กœ๊ทธ์ธ(์นด์นด์˜คํ†ก, ๋„ค์ด๋ฒ„ ๋“ฑ), Open API ์‚ฌ์šฉ ... Practice https://www.notion.so/softsqua..