Post

UTC Time 이해하기: 글로벌 애플리케이션에서의 활용

UTC Time 으로 동시에 공지사항 종료 시키기


SW Q&A 플랫폼에 최근에 공지사항 기능을 개선을 하였다. 그 과정에서 공지를 올렸을때 언제 그 공지를 띄우고 또 언제 그 공지를 내릴지 설정하는 기능도 추가를 했다. 해당 기능을 사실 처음에는 단순하게 Admin 페이지에서 오전 9시 부터 시작하게 해줘 라고 하고 그 값을 client 로 부터 가져와서 저장하려고 했다. 그리고 서버시간과 비교해서 시작 시간보다 지나있으면 보여주려고 했다.

하지만 최근에 global 오픈을 하게 되면서 약간의 고민할 거리가 생겼다.

중국의 9시는 우리의 9시와 다르다!


한국에서 Admin 기능을 통해서 9시에 공지를 띄우고 싶다고 설정을 했다고 생각해보자. 하지만 한국의 9시는 중국에서는 8시이다 (시안 기준). 그러니까 우리가 9시에 공지를 띄우고 싶다고 해도 중국에서는 8시에 그 공지를 확인하게 된다는 것이다! 따라서 UTC Time 이라는 개념이 꼭 필요하다

1
2
const now = new Date();
const utcISO = now.toISOString();

UTCtime 이란?


UTC time 은 전세계적으로 동기화된 시간이다. 그리니티 천문대 시간이다! 우리나라의 local 시간은 UTC시간에 9 시간을 더한 값으로 사용하고 있다. 이 값을 이용한다면 전체 사용자들에 대해 동기화된 시간으로 공지사항을 전달 할 수 있고 혼란이 없을것이다! 글로벌 오픈을 앞두고 있다면 UTCTIME은 절대 모르면 안되는 개념이란걸 깨달았다.

추가 수정 사항


하지만 추가로 들어온 요구사항 때문에 UTC Time 을 사용하지는 않게 되었다. 어느 나라에서든 9시에 공지를 하자라고 했으면 그 client 들의 시간에 따라 공지를 표시하자는 의견으로 개발이 진행 되었다! 기존 UTC Time 은 사용하지 않게 되었지만 그래도 다음에 왠지 활용할일이 있을거 같다!

This post is licensed under CC BY 4.0 by the author.

© 병욱. Some rights reserved.