Skip to content

use_std_nio

参数名称

use_std_nio

参数解释

设置数据库是否使用标准网络监听器。

取值如果为false,则使用依赖于操作系统的效率更高的网络侦听器。

数据库TCP监听模式存在两种,标准监听和非标准监听,标准监听Windows和Linux平台通用,非标准监听基于平台特性设计。

  • true:标准监听,使用SELECT模型。Linux环境该模型只支持1024个句柄,数据库理论上最多支持1024个连接,因为数据库还有文件使用句柄(可在/proc/进程号/fd目录查看),所以数据库实际支持连接数量为1024-文件消耗句柄≈1000个。
  • false:非标准监听,使用其他模型支持10000个连接(仅Linux平台实现)。

默认值

true

取值范围

[true|false]

访问权限

R/W

是否全局参数

修改生效方式

use_std_nio不支持在数据库中执行SET命令修改,只能通过修改xugu.ini文件,重启系统后生效。

操作步骤

  1. 在数据库中执行以下命令中止数据库服务,退出控制台工具。
    SQL> SHUTDOWN
  2. 修改SETUP文件夹下xugu.ini文件中的use_std_nio参数,根据实际需求在取值范围内选择合适的参数值,保存并退出。
  3. 重新启动数据库服务。
  4. 在数据库中执行以下命令查看当前参数值。
    SQL> SHOW use_std_nio

注意事项

use_std_nio = true

  • 默认约1000个连接,在无负载情况下每个连接建立速度几乎为毫秒级,单机顺序建立1000连接耗时约6秒左右。
  • 修改参数max_conn_num,则连接数根据max_conn_numsession_per_user变化。

use_std_nio = false

  • max_conn_num参数设置无效。
  • 如果session_per_user参数未修改为默认参数,则建立10000连接时超过1000连接时启动页面打印session_quota exceeded
  • session_per_user = 10000时,可成功建立10000连接(前提:操作系统支持10000files)。