我遇到了错误 -
Warning: Heartbeat: MP-CLOCKSKEW Detected clock skew: host xyz.abc.com skewed by 156 seconds
可以检测到时钟偏差,是MarkLogic服务器重启的原因吗?我查看了手册https://help.marklogic.com/knowledgebase/article/View/24/0/synchronizing-system-clocks-in-a-cluster
但它没有说明MarkLogic服务器可以重新启动。也许,可能还有其他原因。
答案 0 :(得分:0)
如果您在先前错误之后(并且在几毫秒内)直接在错误日志中看到“Marklogic restarting”,那么它可能是直接调用的重启。否则,可能由于后来出现的症状(可能但不一定)导致检测到的问题导致重启。 您可能无法最终确定,它不太可能直接导致任何事情,但很可能是许多问题的间接原因。 但是,如果你确定时钟偏差,那么问题就会减少 - “这是一件好事” 系统重启是MarkLogic的最后一招。决定何时问题严重到需要重启而不是侵入性较小的方法(例如事务中止,线程终止等)是一个艰难的架构决策。从“信息”到“关键”确定问题的严重性在其检测到的点上很少是100%客观和确定性的,并且几乎从未将度量检测到实际的潜在原因 - 它是一种症状。 例如,“内存不足”不是严重问题的原因,其症状是其他地方存在使用过多或无法释放内存的问题。
如果MarkLogic(公司)确切地知道如何导致(无意)而非必要(故意)重启的严重问题的每一个案例都不会有前者。因此,你的问题不能得到更好的“官方”答案。
官方的答案是,已知许多严重的问题是由时钟歪斜造成的,并且已知是其他人 - 他们根本就没有特别说过测试,可能是因为已知的那些是如此严重,“不要那样做”实际上是最好的答案。
任何陈述的问题以及无数未说明的问题都可能导致重启。这是固有的。一个严重的问题,它无法由内部代码自动解决和管理,并且根据定义显然未经过测试,可能导致足以重启或崩溃服务器的问题。
是的,听起来很模糊。对,是真的。 这是一个简单的例子。 “将我的服务器置于水下会导致重启”。
也许。也许不吧。你不会得到“服务器在水下,重新启动”的消息。它没有经过测试。你将无法获得明确的答案。这绝对不是一个好主意。我可以证明吗?我不想花$:)
最好的答案是“不要那样做” 时钟偏差也是如此。时间一致性对于分布式事务系统来说非常重要。不要乱用时间,它不是很宽容。