有一些已知问题会影响 Oracle Linux 6 和 Oracle Solaris 11 系统上大量会话(每个服务器同时运行的会话超过 80 个)的可扩展性。这些限制是因系统 DBus 和 gdm 进程中配置的默认配置和较低的文件描述符资源上限而产生的。下面的解决方法可用于提高可扩展性。
在 Sun Ray 服务器上成为超级用户。
通过创建具有以下行的 /etc/dbus-1/system-local.conf
文件来更改默认的 DBus 资源限制:
<!DOCTYPE busconfig PUBLIC "-//freedesktop//DTD D-Bus Bus Configuration 1.0//EN" "http://www.freedesktop.org/standards/dbus/1.0/busconfig.dtd"> <busconfig> <!-- default for this is 2048 --> <limit name="max_completed_connections">32768</limit> <!-- default for this is 256 --> <limit name="max_connections_per_user">4096</limit> </busconfig>
重新引导系统以便更改生效。
在 Sun Ray 服务器上成为超级用户。
通过创建具有以下行的 /etc/dbus-1/system-local.conf
文件来更改默认的 DBus 资源限制:
<!DOCTYPE busconfig PUBLIC "-//freedesktop//DTD D-Bus Bus Configuration 1.0//EN" "http://www.freedesktop.org/standards/dbus/1.0/busconfig.dtd"> <busconfig> <!-- default for this is 2048 --> <limit name="max_completed_connections">32768</limit> <!-- default for this is 256 --> <limit name="max_connections_per_user">4096</limit> </busconfig>
通过将 plimit 命令添加到 /etc/init.d/utsyscfg
文件来更改系统 DBus 守护进程文件描述符资源上限。
在行 start)
(第 320 行)的后面,添加以下行:
if [ -x /bin/plimit ]; then DPID=$(pgrep -f "dbus-daemon --system") if [ -n "$DPID" ]; then plimit -n 16384 $DPID fi fi
通过替换 /lib/svc/method/svc-gdm
文件中的一行来强制系统 gdm 进程使用 Solaris Extended File Facility。
将行 /usr/sbin/gdm $arg &
替换为下面的两行:
ulimit -n 16384 LD_PRELOAD_32=/usr/lib/extendedFILE.so.1 /usr/sbin/gdm $arg &
重新引导系统以便更改生效。