nodejs

    pm2๋ฅผ ํ†ตํ•œ NodeJS Application ๊ด€๋ฆฌ ๊ธฐ๋ฒ•

    pm2๋ฅผ ํ†ตํ•œ NodeJS Application ๊ด€๋ฆฌ ๊ธฐ๋ฒ•

    ์‹œ์ž‘ํ•˜๋ฉฐ pm2๋ž€? "PM2๋Š” ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์„ ๊ด€๋ฆฌํ•˜๊ณ  ์˜จ๋ผ์ธ ์ƒํƒœ๋กœ ์œ ์ง€ํ•˜๋Š” ๋ฐ ๋„์›€์ด ๋˜๋Š” ๋ฐ๋ชฌ ํ”„๋กœ์„ธ์Šค ๊ด€๋ฆฌ์ž" ๋ผ๊ณ  ๊ณต์‹ ํ™ˆํŽ˜์ด์ง€์— ๋‚˜์™€์žˆ๋‹ค. ๋ฐ๋ชฌ (daemon)์ด๋ผ๋Š” ๊ฑด ์ปดํ“จํ„ฐ ์šด์˜์ฒด์ œ์—์„œ ๋ฐฑ๊ทธ๋ผ์šด๋“œ์—์„œ ์‹คํ–‰๋˜๋Š” ํ”„๋กœ์„ธ์Šค๋ฅผ ๋งํ•˜๋ฉฐ ๋”ฐ๋ผ์„œ pm2๋ผ๋Š” ๊ฑด NodeJS๋กœ ๋งŒ๋“ค์–ด์ง„ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๊ด€๋ฆฌํ•˜๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉ๋˜๋Š” ํ”„๋กœ์„ธ์Šค ๊ด€๋ฆฌ์ž๋ผ๊ณ  ๋งํ• ์ˆ˜์žˆ๋‹ค. pm2๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๋ชฉ์  ์—๋Ÿฌ๊ฐ€ ๋ฐœ์ƒํ•˜์—ฌ ํ”„๋กœ๊ทธ๋žจ์ด ์ค‘์ง€๋˜๋Š” ๊ฒฝ์šฐ pm2๊ฐ€ ์ž๋™์œผ๋กœ ๋™์ž‘์‹œ์ผœ์ฃผ๊ธฐ ๋•Œ๋ฌธ์ž„. ์ฝ”๋“œ๋ฅผ ์ˆ˜์ •ํ• ๋•Œ ์„œ๋ฒ„๋ฅผ ๋‚ด๋ฆด ํ•„์š”์—†์ด ์ฝ”๋“œ๋ฅผ ์ €์žฅํ•˜๊ณ  ์›น ์ƒˆ๋กœ๊ณ ์นจ๋งŒ ํ•ด์ฃผ๋ฉด ์ˆ˜์ •๋‚ด์šฉ์ด ๋ฐ˜์˜๋˜์–ด ํŽธ๋ฆฌํ•จ. ๋กœ๊ทธ๋ฅผ ๊ฐ€๋…์„ฑ ์ข‹๊ฒŒ ํ•œ๋ฒˆ์— ๋ณผ ์ˆ˜ ์žˆ์Œ. ์›๋ž˜๋Š” ์‹ฑ๊ธ€ ์“ฐ๋ ˆ๋“œ์ธ NodeJS๋ฅผ pm2 cluster ๋ชจ๋“œ๋ฅผ ํ†ตํ•ด ์›ํ•˜๋Š”๋งŒํผ ์ธ์Šคํ„ด์Šค๋ฅผ ํ™•์žฅํ•˜์—ฌ ์šด์šฉํ• ์ˆ˜..

    [Database] ORM ์›๋ฆฌ ๋ฐ ์žฅ๋‹จ์  ์ดํ•ดํ•˜๊ธฐ

    [Database] ORM ์›๋ฆฌ ๋ฐ ์žฅ๋‹จ์  ์ดํ•ดํ•˜๊ธฐ

    ์‹œ์ž‘ํ•˜๋ฉฐ NodeJS์—์„œ ์‚ฌ์šฉ๋˜๋Š” ORM ์ข…๋ฅ˜ ์•Œ์•„๋ณด๊ธฐ (MySQL & MongoDB) NodeJS์—์„œ๋Š” ๋‹ค์–‘ํ•œ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ์ง€์›ํ•˜๋Š” ์—ฌ๋Ÿฌ ORM ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๊ฐ€ ์‚ฌ์šฉ๋จ. MySQL๊ณผ MongoDB๋Š” ๊ฐ€์žฅ ๋Œ€ํ‘œ์ ์œผ๋กœ ๋งŽ์ด ์‚ฌ์šฉ๋˜๋Š” DBMS์ด๋‹ค. ๋”ฐ๋ผ์„œ ์ด ๋‘˜์— ๊ด€ํ•œ ORM๋“ค์„ ์•Œ์•„๋ณด๊ฒ ์Œ. ORM์€ ๊ทธ ์ข…๋ฅ˜๊ฐ€ ์—„์ฒญ๋‚˜๊ฒŒ ๋งŽ์œผ๋ฏ€๋กœ Javascript ๋‚ด์—์„œ ํ™œ์šฉ๋˜๋Š” ORM๋งŒ ๋น„๊ตํ•˜์—ฌ ๋‹ค๋ฃจ์–ด ๋ณด๊ฒ ์Œ. ORM์ด๋ž€? ORM(Object-Relational Mapping)์ด๋ž€ ๊ฐ์ฒด ์ง€ํ–ฅ ์ฝ”๋“œ๋ฅผ ํ†ตํ•ด DBMS์— ์—ฐ๊ฒฐํ•  ๋•Œ ์‚ฌ์šฉ๋˜๋Š” ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๊ธฐ๋ฒ•์ž„. ์ด๋Š” ์ฝ”๋“œ ๋‚ด์— ์„ ์–ธ๋œ ๋ชจ๋ธ๊ณผ DBMS๋ฅผ ์ง์ ‘ ๋งคํ•‘ํ•˜๋Š” ๋ฐฉ์‹์œผ๋กœ, ๊ฐœ๋ฐœ์ž๊ฐ€ ๊ฐ์ฒด ์ง€ํ–ฅ ์ฝ”๋“œ๋งŒ์œผ๋กœ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ์กฐ์ž‘ํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•ด์ฃผ๋Š” ์—ญํ• ์„ ํ•จ. ์ด๋ฅผ ํ†ตํ•ด ๋ณต์žกํ•œ SQL..

    EJS ์ฃผ์š” ๋ฌธ๋ฒ• ๋ฐ ์ฝ”๋“œ ์Šค๋‹ˆํŽซ ์ •๋ฆฌ

    EJS ์ฃผ์š” ๋ฌธ๋ฒ• ๋ฐ ์ฝ”๋“œ ์Šค๋‹ˆํŽซ ์ •๋ฆฌ

    About EJS EJS๋ž€? EJS๋Š” Embedded JavaScript์˜ ์•ฝ์ž๋กœ, HTML์ฝ”๋“œ ๋‚ด์— JavaScript ์ฝ”๋“œ๋ฅผ ์‚ฝ์ž…ํ•˜์—ฌ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•ด์ฃผ๋Š” ํ…œํ”Œ๋ฆฟ ์—”์ง„์ž„. ํ…œํ”Œ๋ฆฟ ์—”์ง„์ด๋ž€, ํ…œํ”Œ๋ฆฟ์„ ๋ Œ๋”๋งํ•˜์—ฌ HTML์„ ์ƒ์„ฑํ•ด์ฃผ๋Š” ๋„๊ตฌ์ž„. ์ด๋Š” PHP ๋˜๋Š” ASP์˜ ์ž‘์„ฑ ๋ฐฉ์‹๊ณผ ํก์‚ฌํ•˜์—ฌ, ๊ธฐ์กด์— ์›น ๊ฐœ๋ฐœ์„ ํ•ด๋ณธ ์‚ฌ๋žŒ์ด๋ผ๋ฉด ์‰ฝ๊ฒŒ ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ์Œ. EJS๋Š” Controller๋‹จ์—์„œ ๋„˜๊ฒจ์ค€ ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ€์ง€๊ณ  ํƒœ๊ทธ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ฝ”๋”ฉ์ด ๊ฐ€๋Šฅํ•จ. ํƒœ๊ทธ ๋‚ด์—์„œ ๊ฐ„๋‹จํ•œ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ๋ฐฑ์—”๋“œ ๋กœ์ง(if, while, for, foreach ๋“ฑ)์„ ์ž‘์„ฑํ•  ์ˆ˜ ์žˆ์Œ. ๋‹จ ์ด๋Š” Client๋‹จ์—์„œ ๋ Œ๋”๋ง ๋˜๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผ, Server๋‹จ์—์„œ ๋ Œ๋”๋ง ๋˜๋Š” ๊ฒƒ์ž„. ์ฆ‰, Client๋‹จ์—์„œ๋Š” ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ์ฝ”๋“œ๊ฐ€ ์•„๋‹Œ, ๋ Œ๋”๋ง๋œ HTM..