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

5๏ธโƒฃ CS15

[Network] Sync/Async์™€ Blocking/Non-blocking Blocking/Non-blocking๊ณผ Sync/Async๋Š” ๋น„์Šทํ•˜๊ฒŒ ๋ณด์ด์ง€๋งŒ, ๋‹ค๋ฅธ ๊ฐœ๋…์ด๋‹ค. ๊ต‰์žฅํžˆ ํ—ท๊ฐˆ๋ ค์„œ,,!! ๋‘˜์„ ์ •ํ™•ํžˆ ๊ตฌ๋ถ„ํ•˜์—ฌ ์ •๋ฆฌํ•ด๋ณด๋ คํ•œ๋‹ค. ๐Ÿ“Ž ๊ฐœ๋… ๋น„๊ต Sync/Async์™€ Blocking/Non-blocking์€ ๋ชจ๋‘ ํ”„๋กœ์„ธ์Šค๋ฅผ ์šด์šฉํ•˜๊ธฐ ์œ„ํ•œ ๋ฐฉ๋ฒ•์ด๋‹ค. Sync/Async "ํ”„๋กœ์„ธ์Šค์˜ ์ˆ˜ํ–‰ ์ˆœ์„œ ๋ณด์žฅ์— ๋Œ€ํ•œ ๋งค์ปค๋‹ˆ์ฆ˜" Sync : ์š”์ฒญ์ด ๋“ค์–ด์˜จ ์ˆœ์„œ์— ๋งž๊ฒŒ ํ•˜๋‚˜์”ฉ ์ฒ˜๋ฆฌ Async : ํ•˜๋‚˜์˜ ์š”์ฒญ์ด ๋๋‚˜๊ธฐ๋„ ์ „์—, ๋‹ค๋ฅธ ์š”์ฒญ๋“ค์„ ๋™์‹œ์— ์ฒ˜๋ฆฌ Blocking/Non-Blocking "ํ”„๋กœ์„ธ์Šค์˜ ์œ ํœด ์ƒํƒœ์— ๋Œ€ํ•œ ๊ฐœ๋…" Blocking : ๋‹ค๋ฅธ ์ฃผ์ฒด์˜ ์ž‘์—…์ด ๋๋‚  ๋•Œ๊นŒ์ง€ ๊ธฐ๋‹ค๋ ธ๋‹ค๊ฐ€ ์ž์‹ ์˜ ์ž‘์—…์„ ์ˆ˜ํ–‰ Non-Blocking : ๋‹ค๋ฅธ ์ฃผ์ฒด์˜ ์ž‘์—…์— ๊ด€๋ จ ์—†์ด ์ž์‹ ์˜ ์ž‘์—…์„ ์ˆ˜ํ–‰ (Bloc.. 2022. 10. 21.
[Network] SSL/TLS SSL/TLS์— ๋Œ€ํ•œ ๊ฐœ๋… ๋ฐ ์ž‘๋™ ๋ฐฉ์‹์— ๋Œ€ํ•ด ์ •๋ฆฌํ•ด๋ณด์•˜๋‹ค. ๐Ÿ“Ž SSL/TLS ๊ฐœ๋… SSL์€ 1995๋…„ Netscape ์‚ฌ์˜ ์›น ๋ธŒ๋ผ์šฐ์ € ๋ณด์•ˆ ํ”„๋กœํ† ์ฝœ๋กœ ์ฒ˜์Œ ๋“ฑ์žฅํ•˜์˜€๊ณ , 1999๋…„ IETF์— ์˜ํ•ด SSL 3.1์„ ํ‘œ์ค€ํ™”ํ•œ TLS ๋ฒ„์ „ 1.0์ด ๋ฐœํ‘œ๋˜์—ˆ๋‹ค. ๐Ÿ‘‰ SSL๊ณผ TSL์€ ํ†ต์ƒ์ ์œผ๋กœ ๊ฐ™์€ ์˜๋ฏธ๋กœ ์“ฐ์ธ๋‹ค. SSL/TLS์„ ์‚ฌ์šฉํ•˜์—ฌ ์•”ํ˜ธํ™”๋œ ์—ฐ๊ฒฐ์„ ํ•˜๋Š” HTTP๋ฅผ HTTPS๋ผ๊ณ  ํ•œ๋‹ค. ๋Œ€์นญํ‚ค, ๋น„๋Œ€์นญํ‚ค ์•”ํ˜ธํ™”์˜ ๋‹จ์ ์„ ๋ณด์™„ํ•œ๋‹ค. ๐Ÿ“ ๋Œ€์นญํ‚ค, ๋น„๋Œ€์นญํ‚ค ์•”ํ˜ธํ™” ๋ฐฉ์‹ (1) ๋Œ€์นญํ‚ค ์•”ํ˜ธํ™” ์•”ํ˜ธํ™”, ๋ณตํ˜ธํ™”์— ์‚ฌ์šฉ๋˜๋Š” ํ‚ค๊ฐ€ ๋™์ผํ•˜๋‹ค. ๋น„๋Œ€์นญํ‚ค ์•”ํ˜ธํ™” ๋ฐฉ์‹์— ๋น„ํ•ด ์†๋„๊ฐ€ ๋น ๋ฅด๋‹ค๋Š” ์žฅ์ ์ด ์žˆ์ง€๋งŒ, ์ฒ˜์Œ ํ‚ค๋ฅผ ๊ตํ™˜ํ•˜๋Š” ๊ณผ์ •์—์„œ ํ‚ค ํƒˆ์ทจ์— ์˜ํ•œ ๋ณด์•ˆ ์•ฝ์ ์ด ์กด์žฌํ•œ๋‹ค. (2) ๋น„๋Œ€์นญํ‚ค ์•”ํ˜ธํ™” ์•”ํ˜ธํ™”, ๋ณตํ˜ธํ™”์— ์‚ฌ์šฉ๋˜๋Š”.. 2022. 10. 13.
[Network] TCP์˜ 3-Way HandShake์™€ 4-Way HandShake ์˜ค๋Š˜์€ TCP์˜ ์—ฐ๊ฒฐ ์„ค์ •, ๊ทธ๋ฆฌ๊ณ  ํ•ด์ œ ์‹œ ๋ฐœ์ƒํ•˜๋Š” ๋™์ž‘์— ๋Œ€ํ•˜์—ฌ ์ •๋ฆฌํ•˜๊ณ ์ž ํ•œ๋‹ค. ๊ฐ ๋™์ž‘์˜ ์ง„ํ–‰ ๊ณผ์ •๊ณผ ์ฐจ์ด์ ์— ๋Œ€ํ•ด ์ž‘์„ฑํ•ด๋ณด์•˜๋‹ค. ๐Ÿ“Ž TCP์˜ 3-Way HandShake ๊ฐœ๋… TCP ํ†ต์‹ ์„ ์ด์šฉํ•˜์—ฌ ๋ฐ์ดํ„ฐ๋ฅผ ์ „์†กํ•˜๊ธฐ ์œ„ํ•ด ๋„คํŠธ์›Œํฌ ์—ฐ๊ฒฐ์„ ์„ค์ •ํ•˜๋Š” ๊ณผ์ •์ด๋‹ค. ์–‘์ชฝ ๋ชจ๋‘ ๋ฐ์ดํ„ฐ๋ฅผ ์ „์†กํ•  ์ค€๋น„๊ฐ€ ๋˜์—ˆ๋‹ค๋Š” ๊ฒƒ์„ ๋ณด์žฅํ•˜๊ณ , ์‹ค์ œ๋กœ ๋ฐ์ดํ„ฐ ์ „๋‹ฌ์ด ์‹œ์ž‘ ์ „ ๋‹ค๋ฅธ ํ•œ ์ชฝ์ด ์ค€๋น„๋˜์—ˆ๋‹ค๋Š” ๊ฒƒ์„ ์•Œ ์ˆ˜ ์žˆ๋„๋ก ํ•œ๋‹ค. TCP/IP ํ”„๋กœํ† ์ฝœ์„ ์ด์šฉํ•ด์„œ ํ†ต์‹ ์„ ํ•˜๋Š” ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์ด ๋ฐ์ดํ„ฐ๋ฅผ ์ „์†กํ•˜๊ธฐ ์ „์— ์ •ํ™•ํ•œ ์ „์†ก์„ ๋ณด์žฅํ•˜๊ณ ์ž ์ƒ๋Œ€ ์ปดํ“จํ„ฐ์™€ ์‚ฌ์ „์— ์„ธ์…˜์„ ์ˆ˜๋ฆฝํ•˜๋Š” ๊ณผ์ •์„ ์˜๋ฏธํ•œ๋‹ค. ๋™์ž‘ ๋ฐฉ์‹ [ Step 1 ] Client๋Š” Server์™€ ์ปค๋„ฅ์…˜์„ ์ƒ์„ฑํ•˜๊ธฐ ์œ„ํ•ด SYN(x)์„ ๋ณด๋‚ธ๋‹ค. ์ด ๋•Œ Client๋Š” CLOSED.. 2022. 10. 13.
[Web] SSR๊ณผ CSR (feat. MPA์™€ SPA) ์˜ค๋Š˜์€ SSR๊ณผ CSR์˜ ๊ฐœ๋… ๋ฐ ์ฐจ์ด์  ๋“ฑ์„ ์ •๋ฆฌํ–ˆ๋‹ค. ๋˜ ๊ทธ์™€ ๊ด€๋ จ๋œ ๊ฐœ๋…์ธ MPA์™€ SPA์— ๋Œ€ํ•ด์„œ๋„ ํ•จ๊ป˜ ์ž‘์„ฑํ•ด๋ณด์•˜๋‹ค. ๐Ÿ“Ž MPA์™€ SPA MPA์™€ SPA๋Š” ์›น ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๊ตฌ์„ฑํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ๋ถ„๋ฅ˜ํ•œ๋‹ค. MPA (Multi Page Application) MPA๋Š” ์—ฌ๋Ÿฌ ํŽ˜์ด์ง€๋กœ ๊ตฌ์„ฑ๋œ ์›น ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์˜๋ฏธํ•œ๋‹ค. ์‚ฌ์šฉ์ž์˜ ํด๋ฆญ ๋“ฑ ์ธํ„ฐ๋ž™์…˜์ด ๋ฐœ์ƒํ•  ๋•Œ๋งˆ๋‹ค ์„œ๋ฒ„๋กœ๋ถ€ํ„ฐ ์ƒˆ๋กœ์šด html์„ ๋ฐ›์•„์˜จ ํ›„, ํ•ด๋‹น ๋งํฌ๋กœ ์ด๋™ํ•˜์—ฌ ํŽ˜์ด์ง€ ์ „์ฒด๋ฅผ ์ƒˆ๋กœ ๋ Œ๋”๋ง ํ•˜๋Š” ์ „ํ†ต์ ์ธ ์›น ํŽ˜์ด์ง€ ๊ตฌ์„ฑ ๋ฐฉ์‹์ด๋‹ค. SPA (Single Page Application) SPA๋Š” ํ•˜๋‚˜์˜ ํŽ˜์ด์ง€๋กœ ๊ตฌ์„ฑ๋œ ์›น ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์˜๋ฏธํ•œ๋‹ค. ๋ธŒ๋ผ์šฐ์ €์— ์ตœ์ดˆ ํ•œ ๋ฒˆ ํŽ˜์ด์ง€ ์ „์ฒด๋ฅผ ๋กœ๋“œํ•˜๊ณ , ์ดํ›„๋ถ€ํ„ฐ๋Š” ํ•„์š”ํ•œ ํŠน์ • ๋ถ€๋ถ„๋งŒ Ajax๋ฅผ ํ†ตํ•ด ๋ฐ์ดํ„ฐ๋ฅผ .. 2022. 9. 29.
[Web] ์ฟ ํ‚ค์™€ ์„ธ์…˜ ์˜ค๋Š˜์€ ์ฟ ํ‚ค์™€ ์„ธ์…˜์˜ ๊ฐœ๋…, ๋™์ž‘ ๋ฐฉ์‹์— ๋Œ€ํ•ด ๊ฐ„๋‹จํžˆ ์ •๋ฆฌํ–ˆ๋‹ค. ๐Ÿ“Ž ์ฟ ํ‚ค์™€ ์„ธ์…˜ ์ฟ ํ‚ค์™€ ์„ธ์…˜์€ HTTP protocol์˜ ์•ฝ์  ๋ณด์™„์„ ์œ„ํ•ด ์‚ฌ์šฉํ•œ๋‹ค. HTTP protocol์˜ ํŠน์ง• Connectionless ํ”„๋กœํ† ์ฝœ ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์„œ๋ฒ„์— ์š”์ฒญํ–ˆ์„ ๋•Œ, ๊ทธ ์š”์ฒญ์— ๋งž๋Š” ์‘๋‹ต์„ ๋ณด๋‚ธ ํ›„ ์—ฐ๊ฒฐ์„ ๋Š๋Š” ์ฒ˜๋ฆฌ๋ฐฉ์‹ Stateless ํ”„๋กœํ† ์ฝœ ์ปค๋„ฅ์…˜์„ ๋Š๋Š” ์ˆœ๊ฐ„ ํด๋ผ์ด์–ธํŠธ์™€ ์„œ๋ฒ„์˜ ํ†ต์‹ ์ด ๋๋‚˜๋ฉฐ, ์ƒํƒœ ์ •๋ณด๋ฅผ ์œ ์ง€ํ•˜์ง€ ์•Š์Œ ๐Ÿ‘‰ client์™€ server๊ฐ€ ์—ฐ๊ฒฐ ์ƒํƒœ๋ฅผ ์œ ์ง€ํ•ด์•ผ ํ•˜๋Š” ๊ฒฝ์šฐ ๋ฌธ์ œ ๋ฐœ์ƒ (๋กœ๊ทธ์ธ ์ •๋ณด ๋“ฑ) ๐Ÿ‘‰ client ๋‹จ์œ„๋กœ ์ƒํƒœ ์ •๋ณด๋ฅผ ์œ ์ง€ํ•ด์•ผ ํ•˜๋Š” ๊ฒฝ์šฐ ์ฟ ํ‚ค์™€ ์„ธ์…˜์ด ํ•„์š”ํ•จ ๐Ÿ“Ž ์ฟ ํ‚ค ์ฟ ํ‚ค์˜ ๊ฐœ๋…๊ณผ ํŠน์ง• ํด๋ผ์ด์–ธํŠธ ๋กœ์ปฌ์— ์ €์žฅ๋˜๋Š” Key-Value ์Œ์˜ ๋ฐ์ดํ„ฐ ํŒŒ์ผ (String ํ˜•ํƒœ) ์‚ฌ์šฉ์ž๊ฐ€ ๋ณ„๋„.. 2022. 9. 22.