Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.
只读向外扩展和数据库镜像分别需要单独的许可。请参见单独授权的组件。
控制只读向外扩展中所涉及的数据库服务器之间的负载平衡。
{ NodeType | NODE }={ DIRECT | PRIMARY | COPY }
仅限网络服务器。
DIRECT 这是缺省设置。如果 NodeType 连接参数设置为 DIRECT,数据库服务器接受连接时不会执行负载平衡或重定向。
PRIMARY 如果 NodeType 连接参数设置为 PRIMARY 并且连接到了主服务器,连接将被接受。如果连接到了镜像服务器或复制节点,数据库服务器将把此连接重定向到主服务器。
COPY 如果 NodeType 连接参数设置为 COPY,数据库服务器将检查自己分支中的复制节点(如果服务器不是根节点则还包括它自己)并且选择负载最轻的复制节点。如果数据库服务器没有选择自身,它将把客户端重定向到选定的数据库服务器。
DIRECT
客户端应用程序使用该连接参数来控制只读向外扩展包含的数据库服务器的负载平衡。客户端指定该连接参数来表明它们想要连接的数据库服务器类型。客户端初始连接的数据库服务器决定应该处理此连接的数据库服务器,而且如果有必要,将通过返回该数据库服务器地址的方式来把此连接重定向到适当的数据库服务器上。客户端与原数据库服务器断开连接,然后连接到适当的数据库服务器上。
如果指定 COPY,客户端连接的数据库服务器所在的分支上将出现负载平衡。分支是由该数据库服务器和它所有的子项组成的。此功能对在位于不同地理位置的服务器中执行负载平衡来说会有用处。
如果客户端连接重定向到不同的数据库服务器上,ServerName (Server) 连接参数中指定的值与数据库服务器 Name 属性的值将不匹配。请参见Name 服务器属性。
如果指定了 NodeType,应用程序通常会连接根节点,然后该数据库服务器再确定负载最低的复制节点。接着连接被重定向到该复制节点。如果应用程序在短时间内几次建立又丢弃了这种连接,那么连接将被放入连接池中,且它也不会询问根节点应该使用的复制服务器。使用连接池可以降低根节点的负载,但可能会出现意想不到的行为。应用程序可以指定它的连接不能被放入地址池,以确保在每次连接中都由根服务器来决定要连接的复制节点。
主服务器和镜像服务器位于安大略省的滑铁卢。日本的客户端想在日本建立一组复制节点,以降低连接延迟。如果在日本的一个复制节点分支是根节点的直接子节点,那么其它子节点可以被添加到日本的这一复制节点下面。客户端可以连接到中心,并指定 NodeType=COPY。日本的本地只读连接会随之在所有本地数据库服务器中进行负载平衡,不会有客户端会连接其它地方的数据库服务器。如果客户端需要对数据库进行更改,它们会改变连接字符串以使用 NodeType=PRIMARY。