๋ถ„๋ฅ˜ ์ „์ฒด๋ณด๊ธฐ 132

[Network] ARP(Address Resolution Protocol)

ARP(Address Resolution Protocol) ์ฃผ์†Œ ๋ณ€ํ™˜ ARP ํ”„๋กœํ† ์ฝœ ARP Package 1. ์ฃผ์†Œ ๋ณ€ํ™˜(Address Mapping) : ๋„คํŠธ์›Œํฌ ๊ณ„์ธต์—์„œ ๋‹ค์Œ-ํ™‰์— ๋Œ€ํ•œ ๋…ผ๋ฆฌ ์ฃผ์†Œ๋ฅผ ์•Œ์•„๋‚ด์–ด๋„, ๋ฐ์ดํ„ฐ๋งํฌ๊ณ„์ธต์„ ํ†ตํ•ด์„œ ์ „๋‹ฌํ•˜๋ ค๋ฉด ๋ฌผ๋ฆฌ์ฃผ์†Œ๋ฅผ ์ง€์ •ํ•ด์•ผํ•จ ๋…ผ๋ฆฌ ์ฃผ์†Œ ๋„คํŠธ์›Œํฌ ๊ณ„์ธต ๋ ˆ๋ฒจ์˜ ์ฃผ์†Œ ์ „์„ธ๊ณ„์ ์œผ๋กœ ์œ ์ผํ•œ ์ฃผ์†Œ๊ฐ’, 32๋น„ํŠธ ๊ธธ์ด(IP์ฃผ์†Œ) ๋ฌผ๋ฆฌ ์ฃผ์†Œ ๋กœ์ปฌ ๋„คํŠธ์›Œํฌ์—์„œ ์œ ํšจํ•˜๊ณ  ์œ ์ผํ•œ ์ฃผ์†Œ ํ˜ธ์ŠคํŠธ / ๋ผ์šฐํ„ฐ์— ์„ค์น˜๋œ NIC์— ์‹ค์žฅ๋˜์–ด ์žˆ์Œ ์ด๋”๋„ท์˜ ๊ฒฝ์šฐ 48๋น„ํŠธ ๊ธธ์ด(MAC ์ฃผ์†Œ) * ์ •์  ๋ณ€ํ™˜(Static Mapping) ๋…ผ๋ฆฌ์ฃผ์†Œ์™€ ๋ฌผ๋ฆฌ์ฃผ์†Œ๊ฐ„์˜ ์—ฐ๊ด€ ํ…Œ์ด๋ธ”์„ ์ €์žฅํ•˜์—ฌ ์‚ฌ์šฉ ํ•„์š” ์‹œ์— ์—ฐ๊ด€ ํ…Œ์ด๋ธ” ๊ฒ€์ƒ‰ ๋ฌด๋ฆด์ฃผ์†Œ๊ฐ€ ๋ณ€๊ฒฝ๋˜๋Š” ๊ฒฝ์šฐ, ์ •์  ํ…Œ์ด๋ธ”์„ ๋ณ€๊ฒฝํ•ด์•ผํ•จ (NIC ๋ณ€๊ฒฝ, ์ปดํ“จํ„ฐ์˜ ์ด๋™ ..

[DB] ์ธ๋ฑ์Šค (Index)

1. ์ธ๋ฑ์Šค ๊ฐœ์š” ๋ฐ์ดํ„ฐ์— ๋Œ€ํ•œ ๋…ผ๋ฆฌ์  ํฌ์ธํ„ฐ์˜ ์ง‘ํ•ฉ์œผ๋กœ ์ฑ…์˜ ์ฐพ์•„๋ณด๊ธฐ์™€ ๊ฐ™์€ ์—ญํ•  ํ…Œ์ด๋ธ” ๋กœ์šฐ์˜ ํŠน์ •๊ฐ’(ROWID)๊ณผ ํŠน์ • ์ปฌ๋Ÿผ์˜ ์ •๋ ฌ๋œ ๊ฐ’์„ ๊ฒฐํ•ฉํ•˜์—ฌ ๊ตฌ์กฐํ™” ์งˆ์˜๋ฌธ์˜ ๋น ๋ฅธ ์ˆ˜ํ–‰๊ณผ ์ปฌ๋Ÿผ๊ฐ’์˜ ์œ ์ผ์„ฑ์„ ๋ณด์žฅํ•˜๊ธฐ ์œ„ํ•ด์„œ ์‚ฌ์šฉ * ์ธ๋ฑ์Šค์˜ ํ•„์š”์„ฑ ํ…Œ์ด๋ธ” ๋กœ์šฐ๋Š” ๋ฐ์ดํ„ฐ ํŒŒ์ผ ๋ธ”๋ก์˜ ๋นˆ ๊ณต๊ฐ„์— ์ €์žฅ๋จ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋Š” ๊ฐ ํ…Œ์ด๋ธ”์˜ ๋ชจ๋“  ํŽ˜์ด์ง€์— ์žˆ๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ์ฝ์–ด์„œ ์›ํ•˜๋Š” ๋กœ์šฐ๋ฅผ ์ฐพ์•„์•ผํ•จ ์ž‘์€ ํฌ๊ธฐ์˜ ํ…Œ์ด๋ธ”์€ ์—†์–ด๋„ ๋ฌด๊ด€ ๋Œ€๋ถ€๋ถ„์˜ ๊ฒฝ์šฐ ๋ฐ์ดํ„ฐ ์ ‘๊ทผ ์†๋„๊ฐ€ ๋นจ๋ผ์ง * ์ธ๋ฑ์Šค์˜ ์žฅ๋‹จ์  ์žฅ์  ๋‹จ์  ๋น ๋ฅด๊ฒŒ ๋ฐ์ดํ„ฐ๋ฅผ ์ฐพ์•„๋‚ผ ์ˆ˜ ์žˆ์Œ ์ธ๋ฑ์Šค ์ž์ฒด๊ฐ€ ์ถ”๊ฐ€ ๊ณต๊ฐ„์„ ์ฐจ์ง€ํ•˜๊ณ , ์ธ๋ฑ์Šค๋ฅผ ์œ ์ง€ ๊ด€๋ฆฌํ•˜๋Š”๋ฐ ์ถ”๊ฐ€์ ์ธ ์‹œ๊ฐ„ ์†Œ๋น„ ์œ ์ผ ์ธ๋ฑ์Šค๋กœ ๋งŒ๋“ค๋ฉด UNIQUE ์ œ์•ฝ ์กฐ๊ฑด๋„ ๊ฐ•ํ™”ํ•  ์ˆ˜ ์žˆ์Œ ์ธ๋ฑ์Šค๋ฅผ ์ด์šฉํ•ด์„œ ๊ฒ€์ƒ‰ํ•  ๋•Œ๋Š” ์‹œ๊ฐ„์ด ์ค„์–ด๋“ค์ง€๋งŒ, ..

[DB] ์ฐธ์กฐ ๋ฌด๊ฒฐ์„ฑ

์ฐธ์กฐ ๋ฌด๊ฒฐ์„ฑ(Referential Integrity) ํ…Œ์ด๋ธ” ์‚ฌ์ด์˜ ๊ด€๊ณ„ ๊ทœ์น™์„ ์ •์˜ํ•˜๊ธฐ ์œ„ํ•œ ์ œ์•ฝ์กฐ๊ฑด ๋ฐ์ดํ„ฐ๊ฐ€ ์ž…๋ ฅ, ์ˆ˜์ •, ์‚ญ์ œ๋  ๋•Œ ๋‘ ํ…Œ์ด๋ธ” ๋กœ์šฐ ์‚ฌ์ด์˜ ์ •ํ•ฉ์„ฑ๊ณผ ์ผ๊ด€์„ฑ์„ ์œ ์ง€ํ•˜๋Š”๋ฐ ์‚ฌ์šฉ ์ฐธ์กฐํ•˜๋Š” ํ…Œ์ด๋ธ”(์ž์‹ํ…Œ์ด๋ธ”)์— ๋ฐ์ดํ„ฐ๊ฐ€ ์‚ฝ์ž…๋  ๋•Œ์—๋Š” ํ•ญ์ƒ ์ฐธ์กฐ๋˜๋Š” ํ…Œ์ด๋ธ”(๋ถ€๋ชจํ…Œ์ด๋ธ”)์— ์žˆ๋Š” ๊ฐ’์œผ๋กœ ๋“ค์–ด๊ฐ ์™ธ๋ž˜ํ‚ค ์ œ์•ฝ์กฐ๊ฑด์œผ๋กœ ๊ตฌํ˜„ํ•จ * ์œ ์˜์‚ฌํ•ญ ์™ธ๋ž˜ํ‚ค๋ฅผ ๋งŒ๋“ค๊ธฐ ์ „์— ๋ฐ˜๋“œ์‹œ ๋ถ€๋ชจํ…Œ์ด๋ธ”์ด ๋จผ์ € ์ƒ์„ฑ๋˜์–ด์•ผํ•œ๋‹ค ์ฐธ์กฐ๋˜๋Š” ๋ถ€๋ชจํ…Œ์ด๋ธ”์˜ ์ปฌ๋Ÿผ์€ ๋ฐ˜๋“œ์‹œ ๊ธฐ๋ณธํ‚ค ๋˜๋Š” Unique ์ด์–ด์•ผํ•œ๋‹ค ํ•œ ๊ฐœ ์ด์ƒ์˜ ์ปฌ๋Ÿผ์œผ๋กœ ์™ธ๋ž˜ํ‚ค๋ฅผ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ์Œ ์ž์‹ํ…Œ์ด๋ธ”์— ์กด์žฌํ•˜๋Š” ๊ฐ’์„ ๋ถ€๋ชจํ…Œ์ด๋ธ”์—์„œ ์‚ญ์ œํ•  ์ˆ˜ ์—†์Œ ์ž…๋ ฅ ์‹œ์—๋Š” ๋ถ€๋ชจํ…Œ์ด๋ธ”์˜ ๋ฐ์ดํ„ฐ๋ฅผ ๋จผ์ € ์ž…๋ ฅํ•˜๊ณ  ์ž์‹ํ…Œ์ด๋ธ”์˜ ๋ฐ์ดํ„ฐ๋ฅผ ์ž…๋ ฅ * ON DELETE ์˜ต์…˜ ์ฐธ์กฐ๋˜๊ณ  ์žˆ๋Š” ๋ถ€๋ชจํ…Œ์ด๋ธ”์˜ ๋ฐ..

[DB] ์˜์—ญ ๋ฌด๊ฒฐ์„ฑ

์˜์—ญ ๋ฌด๊ฒฐ์„ฑ(Domain Integrity) ํ•ด๋‹น ์ปฌ๋Ÿผ์˜ ๊ฐ’์ด ์ปฌ๋Ÿผ์ด ๊ฐ€์งˆ ์ˆ˜ ์žˆ๋Š” ๊ฐ’์˜ ์˜์—ญ(๋„๋ฉ”์ธ) ๋‚ด์— ์†ํ•œ ๊ฐ’์ด์–ด์•ผ ํ•จ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ํ”„๋กœ๊ทธ๋žจ์˜ ๊ธฐ๋Šฅ์— ์˜ํ•ด ์œ ํšจ๊ฐ’์— ๋Œ€ํ•œ ๊ฒ€์ฆ์„ ์„ ํ–‰ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ œ์•ฝ์กฐ๊ฑด์„ ์„ ์–ธํ•˜์—ฌ ๋ฌด๊ฒฐ์„ฑ์„ ๊ฐ•ํ™” * ์ปฌ๋Ÿผ ๋ฐ์ดํ„ฐ ํƒ€์ž…(Data Type) : ๋ฐ์ดํ„ฐ ํƒ€์ž…์€ ์ปฌ๋Ÿผ์— ์ €์žฅ๋˜๋Š” ๊ฐ’์˜ ํ˜•์‹๊ณผ ๋ฒ”์œ„๋ฅผ ์ œํ•œํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๋„๋ฉ”์ธ ๋ฌด๊ฒฐ์„ฑ์„ ์œ„ํ•œ ๊ธฐ์ดˆ ๋‹จ์œ„ * ์ตœ์†Œํ•œ์˜ ํฌ๊ธฐ ๋ฐ์ดํ„ฐ ํƒ€์ž… ์„ ์ •์˜ ๊ธฐ๋ณธ ์›์น™์€ ์ตœ์†Œํ•œ์˜ ํฌ๊ธฐ๋กœ ์‚ฌ์šฉ์ž์˜ ๋ฐ์ดํ„ฐ ์š”๊ตฌ๋ฅผ ๋งŒ์กฑํ•  ์ˆ˜ ์žˆ๋Š” ํƒ€์ž…์„ ์„ ์ •ํ•˜๋Š” ๊ฒƒ ์ €์žฅ๋˜๋Š” ๋ฐ์ดํ„ฐ๊ฐ€ ์ฐจ์ง€ํ•˜๋Š” ๊ณต๊ฐ„์ด ์ ์„ ์ˆ˜๋ก ํ•œ ๋ธ”๋ก(ํŽ˜์ด์ง€)์— ๋” ๋งŽ์€ ๋กœ์šฐ๋ฅผ ์ €์žฅํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ ๊ฒฐ๊ณผ์ ์œผ๋กœ ๋ฐ์ดํ„ฐ๋ธ”๋ก(ํŽ˜์ด์ง€) ๋กœ๋”ฉ ์ˆ˜๊ฐ€ ์ค„์–ด๋“ค์–ด ์ข‹์€ ์„ฑ๋Šฅ์„ ๋ฐœํœ˜ํ•˜๊ฒŒ ๋จ ๋ฌธ์ž์™€ ์ˆซ์ž ๋ฐ์ดํ„ฐ ํ˜•์‹์€ ์ผ๋ฐ˜์ ์œผ..

[DB] ๊ฐœ์ฒด ๋ฌด๊ฒฐ์„ฑ

๊ฐœ์ฒด ๋ฌด๊ฒฐ์„ฑ(Entity Integrity) ํ…Œ์ด๋ธ”์— ์ €์žฅ๋˜๋Š” ๊ฐ๊ฐ์˜ ๋กœ์šฐ์— ๋Œ€ํ•ด์„œ ์œ ์ผ์„ฑ์„ ๋ณด์žฅํ•˜๊ธฐ ์œ„ํ•œ ๋ฌด๊ฒฐ์„ฑ ๋ฐ˜๋“œ์‹œ ๋ณด์žฅ๋˜์–ด์•ผ ํ•˜๋ฏ€๋กœ, ํ”„๋กœ๊ทธ๋žจ์ด๋‚˜ ํŠธ๋ฆฌ๊ฑฐ๋ณด๋‹ค DBMS๊ฐ€ ์ œ๊ณตํ•˜๋Š” ๊ธฐ๋ณธํ‚ค(Primary Key) ์ œ์•ฝ์กฐ๊ฑด์ด๋‚˜ ์œ ์ผ์„ฑ(Unique) ์ œ์•ฝ์กฐ๊ฑด ๋“ฑ์„ ์ด์šฉํ•˜์—ฌ ๊ตฌํ˜„ํ•จ * ์œ ์ผํ‚ค(Unique Key) ์ œ์•ฝ์กฐ๊ฑด ์ง€์ •๋œ ์ปฌ๋Ÿผ์˜ ๊ฐ’์ด ์ค‘๋ณต๋˜๋Š” ๊ฒƒ์„ ํ—ˆ์šฉํ•˜์ง€ ์•Š์Œ ํ…Œ์ด๋ธ”์— ์—ฌ๋Ÿฌ ๊ฐœ๊ฐ€ ์กด์žฌํ•  ์ˆ˜ ์žˆ์Œ NULL ๊ฐ’์€ ํ—ˆ์šฉ ๋ณตํ•ฉ ์œ ์ผํ‚ค(Composite Unique Key) : ํ•œ ๊ฐœ ์ด์ƒ์˜ ์ปฌ๋Ÿผ์„ ์กฐํ•ฉํ•˜์—ฌ ์œ ์ผํ‚ค๋กœ ๋งŒ๋“ค ์ˆ˜ ์žˆ์Œ * ๊ธฐ๋ณธํ‚ค(Primary Key) ์ œ์•ฝ์กฐ๊ฑด ํ…Œ์ด๋ธ”์— ์žˆ๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ์œ ์ผํ•˜๊ฒŒ ์‹๋ณ„ํ•˜๊ธฐ ์œ„ํ•œ ๋ฌด๊ฒฐ์„ฑ ์ œ์•ฝ์กฐ๊ฑด ํ…Œ์ด๋ธ” ๋‹น ํ•˜๋‚˜๋งŒ ์ง€์ • ๊ฐ€๋Šฅํ•จ ์œ ์ผ(Unique)ํ•ด์•ผํ•˜๊ณ , NULL๊ฐ’์„ ๊ฐ€..

[DB] ๋ฐ์ดํ„ฐ ๋ฌด๊ฒฐ์„ฑ

๋ฐ์ดํ„ฐ ๋ฌด๊ฒฐ์„ฑ(Data Integrity) ๋ฐ์ดํ„ฐ์˜ ์ •ํ™•์„ฑ, ์ผ๊ด€์„ฑ, ์œ ํšจ์„ฑ, ์‹ ๋ขฐ์„ฑ์„ ์œ„ํ•ด ์œ ํšจํ•˜์ง€ ์•Š์€ ๋ฐ์ดํ„ฐ์˜ ์ˆ˜์ •์œผ๋กœ๋ถ€ํ„ฐ ๋ฐ์ดํ„ฐ๋ฅผ ๋ณดํ˜ธ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๋‚ด์˜ ๋ฐ์ดํ„ฐ๊ฐ€ ํ˜„์‹ค ์„ธ๊ณ„์˜ ์˜ฌ๋ฐ”๋ฅธ ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ–๋„๋ก ๋ณด์žฅ ๋ฐ์ดํ„ฐ ๋ฌด๊ฒฐ์„ฑ ๊ฐ•ํ™”(enforcement) -> ๋ฐ์ดํ„ฐ๊ฐ€ ๋ฌด๊ฒฐ์„ฑ์„ ๊ฐ€์ง€๋„๋ก ํ•˜๋Š” ํ–‰์œ„ * ๋ฌด๊ฒฐ์„ฑ ๊ฐ•ํ™” ํ•„์š”์„ฑ ๋ฐ์ดํ„ฐ ๋ฌด๊ฒฐ์„ฑ์€ ๋ฐ์ดํ„ฐ ํ’ˆ์งˆ์— ์ง์ ‘์ ์ธ ์˜ํ–ฅ์„ ์คŒ ํ”„๋กœ๊ทธ๋žจ์ด ์™„์„ฑ๋˜๊ณ  ๋ฐ์ดํ„ฐ๊ฐ€ ์ถ•์ ๋œ ํ›„์—๋Š” ๋ฐ์ดํ„ฐ ํด๋ฆฐ์ง•์ด๋‚˜ ๋ฌด๊ฒฐ์„ฑ ๊ฐ•ํ™”์— ๋งŽ์€ ๋น„์šฉ์ด ๋ฐœ์ƒํ•จ ํ’ˆ์งˆ ํ™•๋ณด๋ฅผ ์œ„ํ•ด์„œ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์„ค๊ณ„์™€ ๊ตฌ์ถ•๊ณผ์ •์—์„œ ์ ์ •ํ•œ ๋ฌด๊ฒฐ์„ฑ ๋ฐฉ์•ˆ์„ ํ™•๋ณดํ•ด์•ผํ•จ * ๋ฐ์ดํ„ฐ ๋ฌด๊ฒฐ์„ฑ ์ข…๋ฅ˜ ๊ฐœ์ฒด ๋ฌด๊ฒฐ์„ฑ(Entity) : ํ…Œ์ด๋ธ”์˜ ๋ฐ์ดํ„ฐ ์ธ์Šคํ„ด์Šค(๋กœ์šฐ, ํ–‰)๋ฅผ ์œ ์ผํ•˜๊ฒŒ ์‹๋ณ„ํ•  ์ˆ˜ ์žˆ๋Š” ์†์„ฑ์ด๋‚˜ ์†์„ฑ ๊ทธ๋ฃน์„ ๊ฐ€์ ธ์•ผํ•จ ์˜์—ญ ๋ฌด๊ฒฐ์„ฑ(D..

[Computer] ์šด์˜์ฒด์ œ ๋ฐœ์ „

์œ ๋‹‰์Šค(Unix) ์ „๋ฌธ ํ”„๋กœ๊ทธ๋ž˜๋จธ์šฉ์œผ๋กœ ๊ฐœ๋ฐœ -> ๋‹ค์–‘ํ•œ ํ”„๋กœ๊ทธ๋žจ ์ œ์ž‘ ๊ณ ๊ธ‰ ์–ธ์–ด๋กœ ์ž‘์„ฑ๋˜์–ด ๋‹ค์–‘ํ•œ ํ•˜๋“œ์›จ์–ด์— ์„ค์น˜ ๊ฐ€๋Šฅ ์—ฐ๊ตฌ์šฉ์œผ๋กœ ์†Œ์Šค ๊ณต๊ฐœ -> ๋Œ€ํ•™์ด๋‚˜ ์—ฐ๊ตฌ์†Œ์—์„œ ๋งŽ์ด ์‚ฌ์šฉ ๋‹ค์ค‘ ์‚ฌ์šฉ์ž ์‹œ์Šคํ…œ ๊ฐ•๋ ฅํ•œ ๋„คํŠธ์›Œํฌ ๊ธฐ๋Šฅ ์ง€์› X Windows ๋„๊ตฌ๋กœ GUI ํ™˜๊ฒฝ ์ œ๊ณต ๋ฆฌ๋ˆ…์Šค(Linux) 1991๋…„ ํ•€๋ž€๋“œ์˜ ํ—ฌ์‹ฑํ‚ค ๋Œ€ํ•™์ƒ์ด๋˜ Linus Tovalds ๊ฐœ๋ฐœ GNU ํ”„๋กœ์ ํŠธ์— ์ฐธ์—ฌํ•˜๋ฉด์„œ ๊ธ‰์†ํ•˜๊ฒŒ ์„ฑ์žฅ - 1984๋…„ ์‹œ์ž‘๋œ ํ”„๋กœ์ ํŠธ(๋ฆฌ์ฐจ๋“œ ์Šคํ†จ๋งŒ) - ์ž์œ ์†Œํ”„ํŠธ์›จ์–ด ์žฌ๋‹จ ์„ค๋ฆฝ, GPL, copy left ์šด๋™ ์ „๊ฐœ - ์˜คํ”ˆ์†Œ์Šค(Open Source) ์šด๋™์œผ๋กœ ์ด์–ด์ง ๋ฌด๋ฃŒ์ด๋ฉฐ ์†Œ์Šค ์ฝ”๋“œ๊ฐ€ ์™„์ „ํžˆ ๊ณต๊ฐœ๋œ ์šด์˜์ฒด์ œ ๋ˆ„๊ตฌ๋‚˜ ๋‹ค์šด๋ฐ›์•„ ์„ค์น˜ํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ๋‹ค์ˆ˜์˜ ๋ฐฐํฌํŒ์ด ์กด์žฌ Mac OS ์• ํ”Œ์—์„œ ๊ฐœ๋ฐœํ•œ GUI ๊ธฐ๋ฐ˜์˜ ์šด..

[Computer] ์šด์˜์ฒด์ œ

์šด์˜์ฒด์ œ(Operating System) ์ปดํ“จํ„ฐ์˜ ํšจ์œจ์ ์ธ ์šด์˜์„ ๋‹ด๋‹นํ•˜๋Š” ์‹œ์Šคํ…œ ์†Œํ”„ํŠธ์›จ์–ด ์‹œ์Šคํ…œ ์ž์›์ธ CPU, RAM, HDD, I/O์žฅ์น˜, ๋„คํŠธ์›Œํฌ ๋“ฑ์„ ํšจ์œจ์ ์œผ๋กœ ๊ด€๋ฆฌํ•˜๊ณ  ์šด์˜ ์‚ฌ์šฉ์ž์™€ ์ปดํ“จํ„ฐ ํ•˜๋“œ์›จ์–ด ๊ฐ„์˜ ์ธํ„ฐํŽ˜์ด์Šค ์—ญํ• ์„ ํ•จ ์šด์˜์ฒด์ œ ๋ชฉํ‘œ ์ปดํ“จํ„ฐ ๋‚ด์˜ ํ•˜๋“œ์›จ์–ด/ ์†Œํ”„ํŠธ์›จ์–ด ์ž์›์„ ๊ด€๋ฆฌํ•จ ์ปดํ“จํ„ฐ์— ์‚ฌ์šฉ์ž๊ฐ€ ์‰ฝ๊ฒŒ ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋Š” ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ์ œ๊ณตํ•จ ์ˆ˜ํ–‰ ์ค‘์ธ ํ”„๋กœ๊ทธ๋žจ๋“ค์˜ ํšจ์œจ์ ์ธ ์šด์˜์„ ๋„์›€ ์ž‘์—… ์ฒ˜๋ฆฌ ๊ณผ์ • ์ค‘์˜ ๋ฐ์ดํ„ฐ๋ฅผ ๊ณต์œ ํ•จ ์ž…์ถœ๋ ฅ์— ๋ณด์กฐ์ ์ธ ๊ธฐ๋Šฅ์„ ์ˆ˜ํ–‰ํ•จ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœํ–‰ํ•˜๋ฉด ์˜ค๋ฅ˜๋ฅผ ์ฒ˜๋ฆฌํ•จ ์šด์˜์ฒด์ œ ๊ธฐ๋Šฅ ํ”„๋กœ์„ธ์Šค ๊ด€๋ฆฌ : ํ”„๋กœ์„ธ์Šค์˜ ์ƒ์„ฑ, ์‚ญ์ œ, ๋™๊ธฐํ™” ๋“ฑ์— ๊ด€์—ฌ ์ž‘์—… ๊ด€๋ฆฌ: ํ”„๋กœ์„ธ์Šค๊ฐ€ ์ˆ˜ํ–‰ํ•˜๋Š” ์ž‘์—…์— ๋Œ€ํ•œ ๊ด€๋ฆฌ ์ฃผ๊ธฐ์–ต ์žฅ์น˜ ๊ด€๋ฆฌ : ์ฃผ๊ธฐ์–ต ์žฅ์น˜์˜ ํ• ๋‹น๊ณผ ํšŒ์ˆ˜๋ฅผ ๊ด€๋ฆฌ ๋ณด์กฐ๊ธฐ์–ต ์žฅ์น˜ ๊ด€๋ฆฌ : ๋ณด์กฐ..

[React] React Hooks

useState : React์˜ ๊ฐ€์žฅ ๊ธฐ๋ณธ์ด ๋˜๋Š” Hook์œผ๋กœ ์ปดํฌ๋„ŒํŠธ๋ฅผ ๋ฆฌ๋ Œ๋”(re-render) ์‹œํ‚ฌ ์ˆ˜ ์žˆ๋‹ค. setState๋ฅผ ํ˜ธ์ถœํ•˜์—ฌ state์˜ ๊ฐ’์„ ๋ณ€๊ฒฝํ•˜๋ฉด, ๋ณ€๊ฒฝ๋œ ๊ฐ’์„ ๋ณด์—ฌ์ฃผ๊ธฐ ์œ„ํ•ด ์ปดํฌ๋„ŒํŠธ๊ฐ€ ๋ฆฌ๋ Œ๋”๋œ๋‹ค. - setState๋Š” ๋™๊ธฐ์ ์œผ๋กœ ๋™์ž‘ํ•œ๋‹ค. -> ์—ฐ์†์œผ๋กœ ์—ฌ๋Ÿฌ๋ฒˆ ์‹คํ–‰ํ•  ๊ฒฝ์šฐ, ์—…๋ฐ์ดํŠธ๋œ state๋ฅผ ๋ณด์žฅ๋ฐ›์ง€ ๋ชปํ•œ๋‹ค. - state๊ฐ€ ๋ณ€ํ•  ๊ฒฝ์šฐ, ์ปดํฌ๋„ŒํŠธ ์ „์ฒด๊ฐ€ ๋ฆฌ๋ Œ๋”๋œ๋‹ค. -> ์ปดํฌ๋„ŒํŠธ ๋‚ด๋ถ€์— ์ •์˜๋œ ๋ชจ๋“  ๋ณ€์ˆ˜์™€ ํ•จ์ˆ˜๊ฐ€ ์žฌ์„ ์–ธ, ์žฌ์‹คํ–‰๋œ๋‹ค. -> ์„ฑ๋Šฅ์ €ํ•˜ ์ด์Šˆ useEffect : ํ•จ์ˆ˜์™€ ๋ณ€์ˆ˜๋ฅผ ๋ฐ›์•„, ๋ณ€์ˆ˜์˜ ๊ฐ’์ด ๋ณ€๊ฒฝ๋  ์‹œ ํ•จ์ˆ˜๋ฅผ ์‹คํ–‰์‹œํ‚จ๋‹ค. ๋ณ€์ˆ˜๋Š” ์˜์กด์„ฑ ๋ฐฐ์—ด(dependency array)๋กœ ์—ฌ๋Ÿฌ ๊ฐ’์„ ํฌํ•จ์‹œํ‚ฌ ์ˆ˜ ์žˆ๋‹ค. ์˜์กด์„ฑ ๋ฐฐ์—ด์ด ๋น„์–ด์žˆ์„ ๊ฒฝ์šฐ, ์ตœ์ดˆ ๋ Œ๋”๋ง ์‹œ ํ•œ๋ฒˆ๋งŒ ..

React 2023.09.15

[์ƒํ™œ์ฝ”๋”ฉ] Docker

Docker ํ•˜๋‚˜์˜ ์šด์˜์ฒด์ œ ์•ˆ์— ๊ฐ๊ฐ์˜ ์ปจํ…Œ์ด๋„ˆ -> ์‹œ๊ฐ„, ์ €์žฅ์žฅ์น˜ ์šฉ๋Ÿ‰ ์ ˆ์•ฝ ์ปจํ…Œ์ด๋„ˆ : ๊ฒฉ๋ฆฌ๋œ ๊ฐ๊ฐ์˜ ์‹คํ–‰ ํ™˜๊ฒฝ ์ด๋ฏธ์ง€ pull ์ปจํ…Œ์ด๋„ˆ run * httpd : ์•„ํŒŒ์น˜ ์›น ์„œ๋ฒ„ (์ด๋ฏธ์ง€ ๋ช…) * test(์˜ˆ์ œ) : ์ปจํ…Œ์ด๋„ˆ ๋ช… #์ปจํ…Œ์ด๋„ˆ ์‹คํ–‰ docker run --name test httpd #์ปจํ…Œ์ด๋„ˆ ์‹คํ–‰ ๋ฉˆ์ถค docker stop test #์ปจํ…Œ์ด๋„ˆ ์žฌ์‹œ์ž‘ docker start test #์‹คํ–‰ ๋กœ๊ทธ ์กฐํšŒ docker logs test #์‹คํ–‰ ๋กœ๊ทธ ์‹ค์‹œ๊ฐ„ docker logs --f test #์‹คํ–‰ ์ค‘์ธ ํ”„๋กœ์„ธ์Šค ์กฐํšŒ docker ps #์ปจํ…Œ์ด๋„ˆ ์‚ญ์ œ(์‹คํ–‰ ์ค‘ X) docker rm test #์‹คํ–‰ ์ค‘์ธ ์ปจํ…Œ์ด๋„ˆ ์‚ญ์ œ docker rm --force test #์ด๋ฏธ์ง€ ์กฐํšŒ docker im..

Docker 2023.09.14