[Windows Service] .NET 5 Windows Service ์‚ฌ์šฉ ์˜ˆ์ œ

๋ฐฐ์น˜์„ฑ ํ”„๋กœ๊ทธ๋žจ์„ ๋งŒ๋“ค๋‹ค๋ณด๋ฉด ์šฐ์„  ์ฝ˜์†”APP๋ถ€ํ„ฐ ์‹œ์ž‘ํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‹ค ์ ์  ์ด๊ฒƒ ์ €๊ฒƒ ์ถ”๊ฐ€๊ธฐ๋Šฅ์ด ์žˆ๋Š” ๋ฐฐ์น˜ํ”„๋กœ๊ทธ๋žจ์„ ๋งŒ๋“ค๊ฒŒ ๋˜๋Š”๋ฐ Local PC์— ๋ฐฐํฌํ•˜๊ณ  ์“ฐ๊ธฐ์—” OS๊ฐ€ Windows๋ผ๋ฉด Windows Service๊ฐ€ ์•„๋ฌด๋ž˜๋„ ์•ˆ์ „ํ•  ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

Windows Service๋Š” ์ œ ๊ฒฝํ—˜์„ ๋ฏธ๋ฃจ์–ด, ์•„๋ฌด๋ž˜๋„ ์ตœ๊ทผ์—๋Š” ๋งŽ์ด ์‚ฌ์šฉ์ด ๋œธํ•ด์ง„ ๊ธฐ์ˆ ์ด ์•„๋‹๊นŒ ์‹ถ์ง€๋งŒ, ๊ฐ‘์ž‘์Šค๋Ÿฌ์šด Windows์˜ ์—…๋ฐ์ดํŠธ๋ผ๋˜๊ฐ€, ์–ด๋–ค ์ด์œ ๋กœ ์žฌ๋ถ€ํŒ…์ด ๋˜์—ˆ์„ ๋•Œ ๋ฐฐ์น˜ํ”„๋กœ๊ทธ๋žจ์ด ์ž๋™์œผ๋กœ ์žฌ์‹œ์ž‘๋˜์–ด์•ผํ•œ๋‹ค๋ฉด ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ํŽธํ•œ ๊ธฐ์ˆ ์ž…๋‹ˆ๋‹ค. .NET 5๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์•…๊ฐ„์˜ Build Event๋ฅผ ํ™œ์šฉํ•ด์„œ ์‰ฝ๊ฒŒ ๋นŒ๋“œํ•˜๊ณ  ๋ฐฐํฌํ•˜๊ณ  ์‹œ์ž‘๊นŒ์ง€ ํ•˜๋Š” ํŠœํ† ๋ฆฌ์–ผ์„ ๋งŒ๋“ค์–ด ๋ดค์Šต๋‹ˆ๋‹ค.

๊ธฐ๋ณธ ์†Œ์Šค์ฝ”๋“œ์˜ ์˜ˆ์ œ๋Š” ์•„๋ž˜ ๋งํฌ๋ฅผ ์ฐธ์กฐํ–ˆ์Šต๋‹ˆ๋‹ค.

์•„๋ž˜๋Š” ํŠœํ† ๋ฆฌ์–ผ ๋งํฌ์ž…๋‹ˆ๋‹ค. Readme๋ฅผ ๋”ฐ๋ผํ•˜์‹œ๋ฉด ๋ฉ๋‹ˆ๋‹ค.

6๊ฐœ์˜ ์ข‹์•„์š”

์ถ”๊ฐ€/์ฐธ๊ณ ๋กœ ์ด๊ฑด ๋ฆฌ๋ˆ…์Šค์—์„œ ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•์ž…๋‹ˆ๋‹คโ€ฆ!

3๊ฐœ์˜ ์ข‹์•„์š”

๊ด€๋ จํ•ด์„œ Topshelf๋ฅผ ์ด์šฉํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค.

http://topshelf-project.com/

.NET Standard 2.0์„ ์ง€์›ํ•ด์„œ .NET Core(์ดํ•˜ .NET)์—์„œ๋„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. .NET Framework์„ ์‚ฌ์šฉํ•˜์‹œ๋Š” ๋ถ„๊ป˜๋Š” ์ข‹์€ ์„ ํƒ์ด ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

image

TopShelf์˜ ์žฅ์ ์€ ์ด ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์ด์šฉํ•˜๋ฉด ์šด์˜์ฒด์ œ์— ์ƒ๊ด€์—†์ด ๋™์ผํ•œ ์ฝ”๋“œ๋ฅผ ์„œ๋น„์Šค์— ๋“ฑ๋ก, ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ์ ์ž…๋‹ˆ๋‹ค.

5๊ฐœ์˜ ์ข‹์•„์š”

์˜คโ€ฆ๋ฆฌ๋ˆ…์Šค์™€๋Š” ์ „ํ˜€ ์นœํ•˜์ง€ ์•Š์•„์„œ ๋ชฐ๋ž๋Š”๋ฐ ๋ฆฌ๋ˆ…์Šค์—๋„ ์„œ๋น„์Šค๊ฐ€ ์žˆ์—ˆ๊ตฐ์š”โ€ฆใ…Žใ…Ž ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค!!

4๊ฐœ์˜ ์ข‹์•„์š”

์•„โ€ฆ์ฒ˜์Œ๋ณด๋Š” ๊ธฐ์ˆ ์ด๊ตฐ์š”. ์ œ๊ฐ€ ์ž์„ธํžˆ ์—ฐ๊ตฌํ•ด๋ณด๋ฉด ์ข‹์„ ๊ฑฐ ๊ฐ™์Šต๋‹ˆ๋‹ค. ์š”์ฆ˜ ์•„๋ฌด๋ž˜๋„ ๋ฐฐ์น˜์„ฑ ์ผ์ด ์žฆ๋‹ค๋ณด๋‹ˆโ€ฆใ…Žใ…Ž ์ถ”์ฒœ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค!!

3๊ฐœ์˜ ์ข‹์•„์š”