linux中的weblogic性能调优

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Linux中的Weblogic性能测试调整

一.操作系统参数调整

1.linux TCP连接数调整

通过命令:ulimit –n 查看当前最大TCP连接数,这表示当前用户的每个

进程最多允许同时打开多少个文件。一般系统默认为1024,在并发量大

的情况下肯定不够用。

修改此限制的最简单办法:ulimit –n 设置单一进程允许打开

的最大文件数。如果系统回显类似于“Operation not permitted”之类的话,说明修改失败,需要修改系统对该用户打开文件数的软限制或硬限制。

修改软限制或硬限制:

修改/etc/security/limits.conf文件,在文件中添加如下行:

* soft nofile 10240

* hard nofile 10240

表示修改所有用户的限制,也可以用指定用户名替代。

修改/etc/pam.d/login文件,在文件中添加如下行:

session required /lib/security/pam_limits.so

查看Linux系统级的最大打开文件数限制:cat /proc/sys/fs/file-max

2.修改网络内核对TCP连接的有关限制

端口范围:

修改/etc/sysctl.conf文件,在文件中添加如下行:

net.ipv4.ip_local_port_range = 1024 65535

另外,有时无法建立TCP连接的原因可能是因为Linux网络内核的IP_TABLE防火

墙对最大跟踪的TCP连接数有限制

修改/etc/sysctl.conf文件,在文件中添加如下行:net.ipv4.ip_conntrack_max = 10240

这表明将系统对最大跟踪的TCP连接数限制设置为10240。请注意,此限制值要尽

量小,以节省对内核内存的占用。

3.其他参数调整

在/etc/sysctl.conf文件中增加如下参数,进行系统参数调整

net.core.rmem_default=128388607 默认的TCP数据接收缓冲

net.core.wmem_default=128388607 默认的TCP数据发送缓冲

net.core.rmem_max=128388607

net.core.wmem_max=128388607

net.ipv4.tcp_rmem=8196 128388607 128388607 最小默认最大net.ipv4.tcp_wmem=8196 128388607 128388607

net.ipv4.tcp_keepalive_time=1800

tcp_keepalive_time 值控制TCP/IP 尝试验证空闲连接是否完好的频率。如果这段时间内没有活动,则会发送保持活动信号。如果网络工作正常,而且接收方是活动的,它就会响应。如果需要对丢失接收方敏感,换句话说,需要更快地发现丢失了接收方,请考虑减小这个值。如果长期不活动的空闲连接出现次数较多,而丢失接收方的情况出现较少,您可能会要提高该值以减少开销。

缺省情况下,如果空闲连接7200 秒(2 小时)内没有活动,Linux 就发送保持活动的消息。通常,1800 秒是首选值,从而一半的已关闭连接会在30 分钟内被检测到。

timeout_timewait

timeout_timewait 值确定了在 TCP/IP 可释放已关闭的连接并复

用其资源之前,必须等待的时间。关闭和释放之间的时间间隔称为TIME_WAIT 状态或最长分段生命周期的两倍(2MSL)状态。在此期间,重新打开客户机和服务器之间的连接比新建一个连接的开销要小。通过减小该项的值,TCP/IP 可更快地释放已关闭的连接,并可为新连接提供更多的资源。如果由于多个连接处于 TIME_WAIT 状态导致吞吐量较低,从而正在运行的应用程序需要快速释放连接、创建新的连接或是进行调整,请调整这个参数。缺省值是 240 秒(4 分钟)。最小推荐值是 30 秒

dev_max_backlog=8096

connection backlog

可能需要提高连接储备值,以应对大量突发入局连接请求的情况。

如果同时接收到大量连接请求,使用较大的值会提高受支持的暂挂连接的数量,从而可减少连接失败的数量。请使用以下过程来查看或定制您的值。

echo X > /proc/sys/net/core/netdev_max_backlog

echo X > /proc/sys/net/core/somaxconn

tcp_keepalive_intvl

tcp_keepalive_intvl 值定义了如果未从接收方收到保持活动消息的响应,TCP/IP 重复发送保持活动信号的频率。当连续发送保持活动信号、但未收到响应的次数超出 tcp_keepalive_probes 的值时,

会放弃该连接。如果期望较长的响应时间,您可能需要提高该值以减少开销。如果需要减少花在验证接收方是否已丢失上的时间,请考虑减小该值或 tcp_keepalive_probes 值。缺省情况下,在未收到响应而重新发送保持活动的消息之前,Linux 会等待 75 秒。通常,15 秒是首选值,以便能够较快地检测到丢失了接收方。

请使用以下过程来查看或定制您的值。

echo X > /proc/sys/net/ipv4/tcp_keepalive_intvl

tcp_keepalive_probes

tcp_keepalive_probes 值定义了 TCP/IP 通过现有连接重新发送未返回应答的保持活动的消息次数。如果您的网络性能很差,可能需要提高该值以保持有效的通信。如果您的网络性能很好,可以减小该值以减少验证接收方是否丢失所花费的时间。缺省情况下,在决定放弃该连接之前,Linux 会发送 9 次未返回应答的保持活动的消息。通常,5 次是首选值,以便能够较快地检测到丢失了接收方。

请使用以下过程来查看或定制您的值。

echo X > /proc/sys/net/ipv4/tcp_keepalive_probes

其中 X 由在未返回应答的情况下,期望的用于保持活动的重新传输的次数替换。

net.ipv4.tcp_window_scaling=0

BOOLEAN

缺省值为1

该文件表示设置tcp/ip会话的滑动窗口大小是否可变。参数值为布尔值,为1时表示可变,为0时表示不可变。tcp/ip通常使用的窗口最大可达到65535 字节,对于高速网络,该值可能太小,这时候如果启用了该功能,可以使tcp/ip滑动窗口大小增大数个数量级,从而提高数据传输的能力(RFC 1323)。(对普通地百M网络而言,关闭会降低开销,所以如果不是高速网络,可以考虑设置为0)

net.ipv4.tcp_sack=0

BOOLEAN

缺省值为1

使用Selective ACK﹐它可以用来查找特定的遗失的数据报--- 因此有助于快速恢复状态。该文件表示是否启用有选择的应答(Selective Acknowledgment),这可以通过有选择地应答乱序接收到的报文来提高性能(这样可以让发送者只发送丢失的报文段)。(对于广域网通信来说这个

相关文档
最新文档