π‘ λ³Έ λ¬Έμλ 'IT μμ€ν μμ μκ°μ νν'μ λν΄ μ 리ν΄λμ κΈμ λλ€.
νλ‘κ·Έλλ°μ νλ€λ³΄λ©΄ epoch time, Unix/POSIX time, time stampμ κ°μ΄ λ€μν μκ° κ΄λ ¨ μ©μ΄λ₯Ό μ νκ² λ©λλ€. μ΄λ₯Ό ꡬλΆνκ³ μ¬μ©νλ μν©κ³Ό μ©λ‘λ₯Ό μ 리νμμΌλ μ°Έκ³ νμκΈ° λ°λλλ€.
1. IT μμ€ν μμ μκ°μ νν
- λλΆλΆμ νλ‘κ·Έλλ° μΈμ΄μ λ°μ΄ν°λ² μ΄μ€μλ νμ¬ μκ°μ λνλ΄λ ν¨μκ° μμ΅λλ€.
- μ΄ μκ° μ 보λ 물리μ μΈ μ₯λΉμ λ΄λΆ νμ΄λ¨Έ νΉμ μΈν°λ·μ ν΅ν GMT μκ° μμ λ±μ λ°©λ²μ μ¬μ©ν©λλ€.
- Windows μ΄μ 체μ μ κ°μ μννΈμ¨μ΄μμλ λ΄λΆ νμ΄λ¨Έμ λ³κ²½μ΄ κ°λ₯νμ§λ§, μλ² λλ μ₯λΉμ ν¬ν¨λ ν΄λμμλ μμ° μμ μ κ³ μ λ κ°μ λ³κ²½νμ§ λͺ»ν μλ μμ΅λλ€.
- βμ΄ν λ‘ μ¬λμ΄ μ΄ν΄ν μ μλ(human readable) νν(μ°λ/μ/μΌ/μ/λΆ/μ΄) λ‘ μκ°μ λνλ΄λ κΈ°λ₯μ΄ μμ§λ§, νλ‘κ·Έλλ°μ΄λ, IT μμ€ν
μμ μ¬μ©μ μν΄ μ¬λμ΄ μ΄ν΄ν μ μλ λν΄ν κΈ΄ μ«μλ‘ ννλ ννλ μμ΅λλ€. Unix Time, POSIX Time, Epoch Time λν μ΄μ ν΄λΉν©λλ€.
- μ¬κΈ°μ epoch μ΄λ λ¨μ΄λ₯Ό λ²μνμλ©΄, μ€μν μ¬κ±΄μ΄λ λ³νκ° μμλ μλ(era)λ₯Ό μλ―Ένλλ°, Unixμ POSIX λ±μ μμ€ν μμ λ μ§μ μκ°μ νλ¦μ λνλΌ λ κΈ°μ€μ μΌλ μκ°(00:00:00 UTC on January 1, 1970)μ λνλ΄λ λ¨μ΄μ λλ€.
- βEpochλ‘λΆν° νμ¬κΉμ§μ νλ₯Έ μκ°μ μμ μΈ μ΄ λ¨μλ‘ νκΈ°νλ©΄ timestampλΌ νλ©°, 10κ°μ λ¨μκ° νμνλ©°, μκ°μ λ¨μλ UTCλ‘ ν΅μΌνμκΈ° λλ¬Έμ μμ°¨μ μν₯μ λ°μ§λ μμ΅λλ€.β
2. νμμ€ν¬νλ μΈμ μ°μΌκΉ?
2.1 νμμ€ν¬ν κΈ°μ€
- νμμ€ν¬νλ μ΄λ μμ μ λ°μ΄ν°κ° μ‘΄μ¬νλ€λ μ¬μ€μ μ¦λͺ
νκΈ° μν΄ νΉμ μμΉμ νμνλ μκ°μ
λλ€.
- κΈ°μ€ μκ°(epoch): 00:00:00 UTC on January 1, 1970
- 1970λ 1μ 1μΌ μμ μ 0μΌλ‘ μμμΌλ‘ νΉμ μμ κΉμ§ μΌλ§λ λ§μ μ΄(second) λ¨μμ μκ°μ΄ μ§λ¬λμ§λ₯Ό ν΅ν΄ νΉμ μμ μ νκΈ°νλ λ°©μμ λλ€.
- 1970λ 1μ 1μΌ μμ μ΄μ μ μμ μ μμ(minus) κ°μ μ΄ λ¨μλ‘ μμ νκΈ°κ° κ°λ₯ν©λλ€.
2.2 νμμ€ν¬ν μ¬μ©
- νΉμ μμ νλλ₯Ό λνλΌ λ 보λ€, νΉμ μμ μ¬λ¬ κ°λ₯Ό λΉκ΅ν λ λΉκ΅μ μ μ©νκ² μ¬μ©ν μ μλ λ°©μ
- IT μμ€ν μμλ νμΌμ΄ μμ±λ λ μ§μ λ§μ§λ§μΌλ‘ μμ λ λ μ§, λ§μ§λ§μΌλ‘ μ€νλ λ μ§ λ±μ κΈ°λ‘νκ³ λΉκ΅ν λ νμμ€ν¬νκ° μ¬μ©λλ©΄, μΈ κ°μ μκ°μ λΉκ΅νκΈ°κ° μμνκ² μ£ .
- λ€νΈμν¬ μμ€ν μμλ λ°μ΄ν°λ λ³΄λΈ μμ μ t1, λ°μ μμ μ t2λΌκ³ νμ λ, μ΄λ€μ μκ° μ°¨μ΄λ₯Ό ν΅ν΄ μ λ¬μ κ±Έλ¦° μκ°μ μ΄ λ¨μλ‘ κ³μ°νλ€κ³ νλ©΄, νμμ€ν¬ν λ°©μμ΄ νΈλ¦¬ν κ²μ λλ€.
2.3 νμμ€ν¬ν λ¨μβ
νμμ€ν¬νλ μ²μμλ μ΄(second) λ¨μλ‘ λ§λ€μ΄μ‘μ§λ§, 물리νμ΄λ μ λ°ν μν κ³μ°μ λ€λ£¨λ μμ€ν μμλ μμ£Ό μ λ°ν μκ° μ°¨μ΄λ₯Ό λνλ΄κΈ° μ΄λ €μΈ μ μκΈ° λλ¬Έμ λλΆλΆμ νλμ νλ‘κ·Έλλ° μΈμ΄μμλ μ΄λ₯Ό λ€μ 1000μΌλ‘ λλ λ°λ¦¬ μΈμ»¨λ(millisecond) λ¨μλ₯Ό μ¬μ©ν©λλ€.
Epochλ‘λΆν° νμ¬κΉμ§μ νλ₯Έ μκ°μ μμ μΈ μ΄ λ¨μλ‘ νκΈ°νλ©΄ 10κ°μ λ¨μκ° νμνλ©°, μκ°μ λ¨μλ UTCλ‘ ν΅μΌνμκΈ° λλ¬Έμ μμ°¨μ μν₯μ λ°μ§λ μμ΅λλ€.
3. νμμ€ν¬ν νν (ISO 8601 & RFC 3339)
ISO 8601
ISO(International Organization for Standardization)μ μ΄λ¦μμ μ μ μλ―μ΄ κ΅μ νμ€μ λ€λ£¨λ κΈ°κ΄μ λλ€. κ·Έλ¦¬κ³ κ° νμ€μ "ISO λλ²λ§" μΌλ‘ νκΈ°κ°λλλ°, ISO 8601μ λ μ§μ μκ° λ°μ΄ν° κ΅νμ λ€λ£¨λ κ΅μ νμ€μ λ»ν©λλ€.
λ μ§ + μκ°μ νννλ κΈ°λ³Έμ μΈ νμμ 'YYYY-MM-DDThh:mm:ss.sssZ' μ μ¬μ©ν©λλ€. μ¬κΈ°μ λ¬Έμ Tλ₯Ό κΈ°μ€μΌλ‘ μΌνΈμλ λ μ§, μ€λ₯ΈνΈμλ μκ°μ νκΈ°νλ©°, Zλ zone offset(UTC μ μμ°¨)μ μλ―Έν©λλ€.
μλ₯Ό λ€μ΄, UTC+09:00(KST, νκ΅ νμ€μ)λ₯Ό μ¬μ©νλ μ°λ¦¬λλΌλ₯Ό κΈ°μ€μΌλ‘ νκΈ°νλ©΄ '2021-06-01T20:37:10+09:00' μ΄ λ©λλ€.
RFC 3339
RFC(Request For Comments)λ μΈν°λ· νμ€ λ±μ΄ μμ±λμ΄ μλ λ¬Έμλ‘, ν΄λΉ λ¬Έμλ IETF(Internet Engineerging Task Force)μμ κ΄λ¦¬λκ³ μμ΅λλ€. RFC 3339 μμ, ISO 8601κ³Ό λ§μ°¬κ°μ§λ‘ λ μ§, μκ°μ νμ€μ λν΄ λ€λ£¨κ³ μμ΅λλ€.
RFC 3339μ λ΄μ© λλΆλΆμ ISO 8601μ λ°λ₯΄κ³ μμ§λ§, μ°¨μ΄μ μ RFC 3339λ λ¬Έμ T λμ 곡백μΌλ‘ λ μ§μ μκ°μ ꡬλΆν μ μμ΄ '2021-06-01 20:37:10+09:00'μ κ°μ΄ ννν μ μμ΅λλ€.
μ°Έκ³
- timestamp online converter: https://timestamp.online/
- [Wiki] Epoch_(computing): https://en.m.wikipedia.org/wiki/Epoch_(computing)
- [Wiki] Timestamp: https://en.m.wikipedia.org/wiki/Timestamp
- [Github.io] RFC 3339 vs ISO 8601: https://ijmacd.github.io/rfc3339-iso8601/
- [Wiki] ISO 8601: https://ko.wikipedia.org/wiki/ISO_8601
'Study: Software(SW) > SW: Etc...' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[IDE] VSCode νμΌ νμ₯μ μΈμ μ€μ λ°©λ² (0) | 2024.03.27 |
---|---|
[SW] IT μμ€ν μμ μκ°μ νν: 'μ€μ΄'μ κ·Έ λ―Έλ (0) | 2022.11.29 |
[λ¬Έμ] νκΈ μμ λ¨μΆν€ μ 리 (2) | 2022.09.22 |
[JAVA] Oracle JAVA μμ ν Apache Open JDK μ€μΉ (0) | 2022.02.10 |