동기화

위키백과, 우리 모두의 백과사전.
이동: 둘러보기, 검색

동기화(synchronization)는 동시에 시스템을 작동시키기 위해 사건을 일치시키는 것이다.

어떤 시스템들은 정확히 동기화될 수 있으며, 혹은 동기에 가까운 상태로 만들 수 있다(독립동기).

오늘날, 동기화는 GPS기반 시간측정체계 덕분에 지구단위로 이루어질 수 있다.

또한 동기화는 동시의 데이터베이스상의 데이터 일치를 의미하기도 한다. 예를 들어, 은행 서버에 접속하는 클라이언트를 생각해 보자. 클라이언트의 계좌에는 10만원이 있다. 클라이언트가 자신의 계좌에서 10만원을 인출하는 거래를 실행한다고 할 때, 클라이언트와 서버가 데이터가 일치하지 않는다면 서버의 기록에는 방금 전 클라이언트의 인출 정보가 없을 것이다. 따라서 클라이언트는 10만원을 한 번 더 인출할 수도 있을 것이다. 그렇게 되면 클라이언트는 10만원의 정보로 20만원을 인출하게 되는 것이므로 일종의 오류라 볼 수 있겠다. 이런 일이 없기 위해서는 클라이언트와 서버는 항상 데이터가 일치해야 하고, 이 데이터 일치화를 '동기화'라고 한다. 좀 더 쉬운 예로는 애플아이튠즈를 들 수 있다. 아이튠즈와 기기간의 동기화는 기본적으로 아이튠즈의 데이터가 기준이다. 무슨 말인가 하면, 기기에 10곡의 음악파일이 있고 아이튠즈에는 음악파일이 없을 때 동기화를 하게 되면 기기의 데이터가 아이튠즈의 데이터를 따라가기 때문에 기기에 있던 10곡의 음악파일은 사라지게 된다.

복잡계에서는 '집단때맞음'(혹은 동기화 현상)으로 불리기도 한다.