TiDB 实例是个什么概念呢?应该怎么连接呢

比如启动两个TiDB,三个TiKV,这时候两个TiDB连接读取的数据是一样的,需要连接两个,然后自己做负载均衡吗,还是怎么做?看官方的例子都只是连接数据库,没有说过这方面,不太懂怎么理解这个,应用层应该通过具体连接哪个TiDB服务呢??

1赞

1、tidb是无状态的,连接任何一个都可以
2、多个tidb可以做负载,负载的前端中间件可以使用如下:
haproxy,
f5
slb/clb等
weir https://github.com/tidb-incubator/weir

3赞

就是一个MySQL代理一样,处理SQL和事务协调,DDL执行。
像使用MySQL一样使用。
TiDB Server无状态,可以使用负载均衡实现高可用,连接F5与具体实例节点均可执行SQL。

2赞

官方有个HAProxy的最佳实践: HAProxy 在 TiDB 中的最佳实践 | PingCAP Docs

2赞

关于TiDB Server以及TiDB集群的架构可以参考这篇文档(里面有视频): TiDB 整体架构 | PingCAP Docs

2赞

都行。你可以试试。一样。

2赞

把他当做mysql对待就行了。连接哪一个都行。

1赞