Существует разница в 1 секунду между сервером (Windows 2016 синхронизируется с time.windows.com) и сторонним веб-сервисом (развернутым на AWS - веб-сервис amazon).

Проблема заключается в следующем: я отправляю запрос с параметром даты Date = DateTime.UtcNow.ToString("yyyy-MM-ddTHH:mm:ssZ") в TPS (сторонний сервис) и получаю ответ с датой меньше отправленной (разница до 1 секунды). Дата в запросе - это дата создания запроса, а в ответе - дата создания ответа.

запрос : < EM> " метки времени " : " 2018-10-24T01 : 33 : 12Z "

ответ : < EM> " метки времени " : " 2018-10-24T01 : 33 : 11.0000138Z "

Может кто-нибудь объяснить разницу во времени? и как правильно решить эту проблему

0
Z.R.T. 24 Окт 2018 в 07:39

2 ответа

Лучший ответ

Задержка в сети и разные серверы NTP между двумя платформами могут объяснить разницу в 1 с. Скорее всего, вы используете 2 разных отсчета времени в приведенной выше настройке. Одно это могло объяснить дрейф.

Конечно, разные приложения или варианты использования потребуют большей или меньшей точности. 1–2 секунды могут быть неприемлемыми для некоторых настроек. По моему опыту, точность / джиттер синхронизации 100 мс может быть достигнута через обычный NTP с использованием тех же опорных часов.

Видеть https: //serverfault.com/questions/724409/how-accurate-can-we-get-computer-clocks-synchronized-in-a-local-network-of-any-n для подробного обсуждения проблем, влияющих на Точность синхронизации времени NTP.

См. Также https://aws.amazon .com / blogs / aws / keep-time-with-amazon-time-sync-service / о том, как AWS управляет эталонными часами NTP.

Обзор сетевого протокола времени NTP см. На странице https://en.m.wikipedia.org/wiki / Network_Time_Protocol

4
Rodrigo M 24 Окт 2018 в 06:01

Чтобы добавить к другому интересному ответу:

Если вы хотите упорядочить ответы и запросы, вам следует использовать метку времени, созданную одним и тем же компьютером (отправителем запроса), а не доверять и сравнивать метки времени, созданные на разных машинах.

Только там вы можете гарантировать последовательное логическое упорядочение меток времени в соответствии с порядком запросов / ответов.

Кроме того, не забывайте, что метки времени, записанные в заголовках, в основном являются данными, которые могут быть подделаны, если они поступают из стороннего источника.

2
Pac0 25 Окт 2018 в 13:11
52961198