Skip to content

Commit 021d7fd

Browse files
committed
AJ-548: update 2.00.11.0
1 parent 87025bf commit 021d7fd

File tree

1 file changed

+39
-4
lines changed

1 file changed

+39
-4
lines changed

README_CN.md

Lines changed: 39 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ DBConnection类提供如下主要方法:
5656
| 方法名 | 详情 |
5757
|:------------- |:-------------|
5858
|DBConnection([asynchronousTask, useSSL, compress, usePython, sqlStd])|构造对象|
59-
|connect(host, port, [username, password, initialScript, enableHighAvailability, highAvailabilitySites, reconnect])|将会话连接到DolphinDB服务器|
59+
|connect(host, port, [username, password, initialScript, enableHighAvailability, highAvailabilitySites, reconnect, enableLoadBalance])|将会话连接到DolphinDB服务器|
6060
|login(username,password,enableEncryption)|登陆服务器|
6161
|run(script)|将脚本在DolphinDB服务器运行|
6262
|run(functionName,args)|调用DolphinDB服务器上的函数|
@@ -107,16 +107,34 @@ boolean success = conn.connect("localhost", 8848, "admin", "123456");
107107

108108
若未使用用户名及密码连接成功,则脚本在Guest权限下运行。后续运行中若需要提升权限,可以使用 conn.login('admin','123456',true) 登录获取权限。
109109

110-
若需要开启 API 高可用,则须设置 highAvailability=true。1.30.22.1及之前版本的 API 将随机选择一个可用节点进行连接;用户也可以通过 highAvailabilitySites 指定可连接的节点组,此时 API 将从 highAvailabilitySites 中随机选择可用节点进行连接。示例如下:
110+
若需要开启 API 高可用,则须设置 `highAvailability=true`。2.00.11.0版本之前,开启高可用模式即开启负载均衡模式;自2.00.11.0版本起,`connect` 方法新增参数 *enableLoadBalance*,用户可手动关闭高可用模式下的负载均衡功能,且该功能默认为关闭。
111+
112+
**以下为同时开启高可用模式和负载均衡功能的情况:**
113+
114+
1.30.22.1及之前版本的 API 将随机选择一个可用节点进行连接;用户也可以通过 highAvailabilitySites 指定可连接的节点组,此时 API 将从 highAvailabilitySites 中随机选择可用节点进行连接。
115+
116+
1.30.22.2 版本起,API 将优先选择低负载节点,判断标准为:内存占用小于80%、连接数小于90% 且节点负载小于80%。即在开启高可用后,API 将优先随机选择一个低负载节点进行连接,若没有低负载节点,则将随机连接一个可用节点。若用户通过 highAvailabilitySites 指定了可连接的节点组,此时 API 将仍优先从highAvailabilitySites 中随机连接一个低负载节点,若无,则随机选择一个highAvailabilitySites 中的可用节点。
117+
118+
注意:若 API 断开重连,将按照上述规则重新连接节点。
119+
120+
示例如下:
121+
122+
* 仅开启高可用模式,此时会开启负载均衡功能。
111123

112124
```java
113125
sites=["192.168.1.2:24120", "192.168.1.3:24120", "192.168.1.4:24120"]
114126
boolean success = conn.connect("192.168.1.2", 24120, "admin", "123456", highAvailability=true, highAvailabilitySites=sites);
115127
```
116128

117-
1.30.22.2 版本起,API 将优先选择低负载节点,判断标准为:内存占用小于80%、连接数小于90% 且节点负载小于80%。即在开启高可用后,API 将优先随机选择一个低负载节点进行连接,若没有低负载节点,则将随机连接一个可用节点。若用户通过 highAvailabilitySites 指定了可连接的节点组,此时 API 将仍优先从highAvailabilitySites 中随机连接一个低负载节点,若无,则随机选择一个highAvailabilitySites 中的可用节点
129+
* 开启高可用模式,同时手动开启负载均衡功能
118130

119-
注意:若 API 断开重连,将按照上述规则重新连接节点。
131+
```java
132+
boolean success = conn.connect("192.168.1.2", 24120, "admin", "123456", enableHighAvailability=true, highAvailabilitySites=sites, enableLoadBalance);
133+
```
134+
135+
**若开启高可用模式、同时不开启负载均衡功能**:API 将优先从 *highAvailabilitySites* 中随机选择一个可用节点进行连接。若未设置 *highAvailabilitySites*,则将随机选择一个集群中的节点。
136+
137+
注意:不支持仅开启负载均衡功能的情况。
120138

121139
当需要在应用程序里定义和使用自定义函数时,可以使用 initialScript 参数传入函数定义脚本。这样做的好处是:一、无需每次运行`run`函数的时候重复定义这些函数。二、API提供自动重连机制,断线之后重连时会产生新的会话。如果 initialScript 参数不为空,API会在新的会话中自动执行初始化脚本重新注册函数。在一些网络不是很稳定但是应用程序需要持续运行的场景里,这个参数会非常有用。
122140
```java
@@ -223,6 +241,17 @@ for (int i = 0; i < 10; ++i)
223241
conn.run("script");
224242
```
225243

244+
2.00.11.0版本之前,`run` 方法自动开启 seqNo 功能。seqNo 是一个长整型,代表一个客户端的任务序号。若当前写入任务失败,则将重复提交该任务。但在部分情况下该功能会影响使用效果。例如,当一次性写入多个数据表的任务时会有可能发生丢失数据。
245+
246+
自2.00.11.0版本起,run 方法支持参数 enableSeqNo,用户可关闭 seqNo 功能。方法如下:
247+
248+
```java
249+
public Entity run(String script, ProgressListener listener, int priority, int
250+
parallelism, int fetchSize, boolean clearSessionMemory, String tableName, boolean enableSeqNo)
251+
```
252+
253+
用户手动关闭 seqNo 功能后,即可避免如数据丢失等不当情况。但若当前任务失败,则不会重复提交该任务。
254+
226255
## 4. 运行DolphinDB函数
227256

228257
除了运行脚本之外,run命令还可以直接在远程DolphinDB服务器上执行DolphinDB内置或用户自定义函数。若`run`方法只有一个参数,则该参数为脚本;若`run`方法有两个参数,则第一个参数为DolphinDB中的函数名,第二个参数是该函数的参数。
@@ -291,6 +320,12 @@ public void testFunction() throws IOException{
291320
}
292321
```
293322
323+
2.00.11.0版本之前,`run` 方法自动开启 seqNo 功能。具体可参见运行 DolphinDB 脚本小节,此处不再赘述。方法如下:
324+
325+
```java
326+
public Entity run(String function, List<Entity> arguments, int priority, int parallelism, int fetchSize, boolean enableSeqNo)
327+
```
328+
294329
## 5. 上传本地对象到DolphinDB服务器
295330
296331
可使用`upload`方法,将本地的数据上传到DolphinDB服务器并分配给一个变量。变量名称可以使用三种类型的字符:字母,数字或下划线,第一个字符必须是字母。

0 commit comments

Comments
 (0)