Bantree
1
์๋
ํ์ธ์, ์ ๋ ๋น์ ๊ฒ์ฌ์ชฝ์ ํ๊ณ ์์ต๋๋ค.
๊ฒ์ฌ๊ธฐ๋ฅผ ๋ด๋นํ๋ค ๋ณด๋๊น ๊ฒ์ฌ๋ฅผ ์์ํ ์๊ฐ, ์ด๋ฏธ์ง๋ฅผ ์์ฑํ ์๊ฐ ๋ฑ๋ฑ ๊ธฐํ ๋ฑ๋ฑ์์ DateTime.Now๋ฅผ ์์ฃผ ์ฌ์ฉํ๊ณ ์๋๋ฐ์, ์ต๊ทผ DateTime.Now์ UtcNow๊ฐ ์๋ ์ฐจ์ด๊ฐ ๋๋ค๊ณ ์๊ฒ ๋์ด ์ด๊ฒ์ ๊ฒ ํ
์คํธ ์ค์ ์์ต๋๋ค.
๊ฒ์ํด๋ณด๋ ๋ด๋ถ ๊ตฌํ์ด ๋ค๋ฅด๊ธฐ ๋๋ฌธ์ผ๋ก ์๊ฒ๋๊ณ
์ค์ ๋ก ํ
์คํธํด๋ณด๋ ์๋์ฒ๋ผ Utc ์๊ฐ์ด ํจ์ฌ ๋น ๋ฅธ ์๋๋ฅผ ๋ณด์ฌ์ฃผ๊ณ ์์์ต๋๋ค.
์๋ ๋ธ๋ก๊ทธ์์ DateTime.UtcNow.ToLocalTime()์ ์ฌ์ฉํ๋ฉด Utc์๊ฐ์ ๋ค์ LocalTime์ผ๋ก ๋ณํํด์ค๋ค๊ณ ํ๊ณ ์ค์ ๋ก ์๋๋ฅผ ์ธก์ ํด๋ณด๋ Utc๋ณด๋ค๋ ์๋์ง๋ง Now๋ณด๋ค๋ ํจ์ฌ ๋น ๋ฅธ ์๋๋ฅผ ๋ด๊ณ ์์์ต๋๋ค.

์์ผ๋ก ๊ฐ๋ฐ๋๋๊ฑฐ์ DateTime.UtcNow.ToLocalTime์ ์ ์ฉํ๊ณ ์ถ์๋ฐ.
ํน์ ์ฌ์ฉํด๋ณด์ ๊ฐ๋ฐ์๋ถ์ด ๊ณ์ ์ง. ๋ค๋ฅธ๋ถ๋ค์ ์ด๋ป๊ฒ ์ฌ์ฉํ๊ณ ๊ณ์ ์ง ๊ถ๊ธํฉ๋๋ค.
์์ ๊ฒฝํ์ด์ฌ๋ ์ข์ผ๋ ๋ต๋ณํด์ฃผ์๋ฉด ๊ฐ์ฌํ๊ฒ ์ต๋๋ค ใ
ใ
3๊ฐ์ ์ข์์
๋งํฌ๋ ๊ธ์์ ์ค๋ช
ํ๋ค์ํผ, UTC๋, ์๋ ์ธก๋ฉด ๋ณด๋ค๋, ๋ณต์์ ํ์ ์กด ์ปจํ
์คํธ์์ ์ฌ๋ฐ๋ฅธ ์๊ฐ ๋น๊ต๋ฅผ ์ํ ๊ฒ์
๋๋ค.
์๋๊ฐ ๋น ๋ฅด๋ค๋ ์ด์ ๋ก, DateTime.UtcNow.ToLocalTime()์ ํธ์ถํ๋ฉด, ์ด๋ DateTime.Now์ ๊ฐ์, ํ์ ์กด ์ฌ์ด์ ์๊ฐ ๋น๊ต๊ฐ ์๋ฉ๋๋ค.
์๋ฅผ ๋ค๋ฉด, ์์นจ 10์์ DateTime.Now ๊ฐ์ ์ ์ฅํ๋ค๊ณ ํ ๋, ์์ธ ๊ฒ์ฌ๊ธฐ๊ฐ ์ ์ฅํ ๊ฐ๊ณผ ๋ฏธ๊ตญ ๋๋ถ์ ์๋ ๊ฒ์ฌ๊ธฐ๊ฐ ์ ์ฅํ ๊ฐ์ ๊ฐ์ต๋๋ค.
๊ทธ๋ฌ๋, ๋ ๊ฒ์ฌ๊ธฐ์ ์๊ฐ๋๊ฐ ๋ค๋ฅด๊ธฐ์ ์ ์ฅ๋ ๊ฒฐ๊ณผ์ ์ง์ ๋น๊ต๋ ์ฌ๋ฐ๋ฅธ ๊ฒฐ๊ณผ๋ฅผ ๋ํ๋ด์ง ์์ต๋๋ค.
๋งํฌ๋ ๋ฌธ์์์๋ utc์ ๋ก์ปฌ ํ์์ด ์ ํ์ ๋ฌธ์ ์ธ ๋ฏํ ๋์์ค๊ฐ ์์ง๋ง, ์ผ๋ฐ์ ์ผ๋ก, DB์ ์ ์ฅํ ์๊ฐ์ UTC time์ผ๋ก ํ๋ ๊ฒ ๊ถ๊ณ ์ฌํญ์
๋๋ค.
(Display ๋ ์ฐ์ฐ์ ์ํด์, ๋ก์ปฌ ํ์์ผ๋ก ๋ณํํฉ๋๋ค.)
๋ฌผ๋ก DB์ ์ด๋ฏธ ๋ก์ปฌ ํ์์ผ๋ก ์ ์ฅํ์ผ๋ฉด ์ด๋ฅผ ์๋๋ฉด ์๋๊ฒ ์ฃ .
1๊ฐ์ ์ข์์
Bantree
4
์ฐ์ ์ข์ ๋ต๋ณ ๊ฐ์ฌํฉ๋๋ค ใ
ใ
ํน์ด์ฌํญ์ ์ ๊ฐ ๋ฏธ๋ฆฌ ๋งํ์ด์ผ ํ๋๋ฐ, ์ฃ์กํฉ๋๋ค
๊ณ ๊ฐ์ฌ์ PC๋ฅผ ๋ฉํํ ๋ ์์คํ
์๊ฐ์ ์๋ฒ๋ก ๋๊ธฐํ๋ฅผ ์ํต๋๋ค.
๊ทธ๋ ๊ธฐ ๋๋ฌธ์ UtcNow๋ฅผ ์ฌ์ฉํ์ง ์๊ณ Now๋ก๋ง ์์ฑํ๊ณ ์์ต๋๋ค.
์ด์ฒ๋ผ ํ์์กด ๋น๊ต๊ฐ ํ์์๋ ํ๊ฒฝ์ด๋ผ๋ฉด ์๋๋ง์ ์ด์ ์ผ๋ก ์ฌ์ฉํ ๋งํ ๊ฐ์น๊ฐ ์์ง ์์๊น ์๊ฐํด๋ดค์ต๋๋ค
Bantree
5
์์นจ์ ๋ค์ ํ
์คํธํด๋ณด๋ ์ฐ์ ์ด์ DateTime.Now๋ก ๋ณธ ์๊ฐ ์์ฒด๊ฐ 14ms๋ ๋์จ๊ฒ ์ข ์ด์ํ๋ค๊ณ ํ๋จ๋์ด ๋ค๋ฅธ ํ
์คํธ๋ฅผ ๋ ํด๋ด์ผ ํ ๊ฑฐ๊ฐ์ต๋๋ค. ใ
ใ
์ถ๊ฐ๋ต๋ณ์ ์ํด์ฃผ์
๋ ๊ด์ฐฎ์๊ฑฐ ๊ฐ์ต๋๋ค. ์์คํ ๋ต๋ณ ์ฃผ์
์ ๊ฐ์ฌํฉ๋๋ค.
1๊ฐ์ ์ข์์