请问客户端会话连两个tidb节点,会不会出现延迟问题?

请问客户端连两个tidb,会不会出现延时问题?或者客户端通过负载均衡会话分布在不同的tidb节点上,应用会不会出现数据查询延迟问题?

为什么会有这种担心,各 TiDB 节点是对等的啊,单机房部署,客户端到各 TiDB 节点的网络延迟也是一样的啊

1 个赞

TIDB 各节点是对等的,且是无状态的啊。

1 个赞

是指通过a节点查询快,通过b节点查询慢?一般不会存在,除非a、b节点的配置或者负载差异大,因为数据有一部分的逻辑是从tikv捞出来放到tidb中整合。
如果是指通过a节点查询的数据,和通过b节点查询的数据不是一个时间点的,比如中间有数据变动,这个不需要担心,都是拿时间戳去同一个tikv里获取的,不会有差异。

假如会话1在tidb节点1 执行insert, 另一个会话2在节点2执行select 。
如果服务器时间不同步,应该返回的时间就不准了吧,这个时间同步或网络延迟有些影响的吧?

没有,应为会话1和会话2都是去 唯一且相同的pd节点 去获取时间戳,然后根据时间戳获取对应数据。比如会话1是在9点提交的,只要会话2拿到的时间戳是小于9点的,就算会话2客户端本地是11点,也查不到会话1插入的数据。

对于数据库来说时间有个统一时间tso,并不是你想的那样