우선, 서버 시간과 로컬 컴퓨터 시간에는 일정한 시차가 있기 때문에 서버 시간을 동기화해야 하는 이유에 대해 이야기해 보겠습니다. 복권 결과와 같이 적시성이 매우 높은 일부 애플리케이션은 이러한 종류의 시간 차이를 허용할 수 없습니다. 옵션 1: 카운트다운마다 서버로 이동하여 시간을 요청하세요.
//开启定时器 var timer = setInterval(function () { //执行请求,获取当前服务端时间并进行相应操作 }, 1000);
옵션 2: 서버에서 서버 시간을 기준으로 카운트다운 타임스탬프 반환
//开启定时器 //假设请求获取到一个时间戳时间差 dateDiff var timer = setInterval(function () { //每秒会获取本地时间,这样就算执行的周期不准确 也可以准确的获取时间差 var countDown = endTime - (+Date.now())/1000 + dateDiff; // 倒计时页面渲染 }, 1000);
페이지 수명 주기 동안 한 번 요청
높은 정확도, 페이지가 오랫동안 열려 있어도 여전히 높은 정확도를 유지합니다 단점:
현재 시간을 1초마다 가져오기 때문에 카운트다운 기간 동안 현지 시간을 의도적으로 수정하면 카운트다운이 비정상적으로 이루어집니다.
위 내용은 Node.js 효율적인 서버 시간 동기화 카운트다운의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!