0

在文档中,有关于“多嵌套数据库连接”的信息:

OrmLiteConnectionFactory 类已扩展为支持命名连接,当您在 IOC 中注册时,您可以方便地定义所有数据库连接,并在使用它们时使用命名属性访问它们。

在这个 SO post中,进一步描述了开发人员可以手动选择要使用的连接:

配置完成后,打开连接而不指定名称将打开与默认数据库的连接,例如:....虽然您可以指定名称以打开与具有不同提供者的数据库的命名连接,例如:

在您拥有多主集群的情况下,您并不想手动选择节点,而是让它随机选择一个,如果一个失败,请尝试另一个节点。

这当然可以通过添加一个层/类来实现,该层/类随机化命名连接(或“主”没有),运行查询,如果一个失败则尝试其他连接。

我想知道在这里实现您自己的逻辑是否是首选,或者 ServiceStack 是否具有一些功能来支持具有重试的多节点集群(我在查找时没有发现糟糕的功能)?

如果实现自己的处理,我如何访问使用该RegisterConnection方法添加的所有命名连接?还是我必须单独缓存它们?

我是否可以建议公开所有已注册的连接以及删除这些连接的方法,例如,如果一个节点没有应答。

4

0 回答 0