我们使用时间戳来确保日志表中的条目是按顺序记录的,但我们发现了一个潜在的缺陷。例如,我们的 RAC 中有两个节点,节点时间戳相差 1000 毫秒。我们的应用服务器在 30ms 秒内插入两个日志条目。第一个插入由 Node1 提供服务,第二个由 Node2 提供服务。由于两个节点之间有 1000 毫秒的差异,时间戳可能会显示日志条目以错误的顺序出现!(我只会使用一个序列,但是出于性能原因我们的序列被缓存了......)
NTP 同步对这种情况没有帮助,因为 NTP 具有 128 毫秒的容错能力——当记录发生的频率高于此值时,这为记录乱序记录敞开了大门。
我有一种感觉,我以错误的方式看待这个问题。我的最终目标是能够检索记录日志条目的实际顺序。它不必是时间戳列。