• Oracle Service Bus Socket Adapter调整的参数


    之前在一个客户中做压力测试时候Oracle Service Bus性能大概达到900tps左右,和客户期望的1600tps有很大差距.

    在研究了Socket Adapter的工作原理之后,判断可能是OS层的参数有关,调整了AIX网络参数后果然好转实现1600tps的目标。

    记录如下: 

    OS(AIX):需要root权限

    /usr/sbin/no -p -o tcp_sendspace=4194304
    /usr/sbin/no -p -o tcp_recvspace=4194304
    /usr/sbin/no -p -o rfc1323=1
    /usr/sbin/no -p -o sb_max=8388608

    可通过no  –L检查设置结果

     

    NIC网卡(eth1: 10.170.32.84):需要root权限

    chdev -l en1 -a tcp_sendspace=1048576 -a rfc1323=1 -a tcp_recvspace=1048576 sb_max=4194304

    可通过ifconfig –a检查设置结果

     

     

    上面修改的参数说明:
    tcp_sendspace ——控制内核中用于缓冲应用程序数据的缓冲区空间大小。您可能希望使其超过缺省值,因为如果达到了限制值,发送应用程序则将挂起数据传输,直到 TCP 将数据发送到缓冲区为止。
    tcp_receivespace ——除了控制接收缓冲区所消耗的缓冲区空间总量之外,AIX 还使用这个值来确定其传输窗口的大小。
    udp_sendspace ——对于UDP,您可以将这个参数设置为不超过 65536 的值,因为每个 IP 数据包的上限为 65536 个字节。
    sb_max ——可调参数为排队等待单个套接字的套接字缓冲区数目设置上限,而这个上限可以控制缓冲区(排队等待发送者或者接收的套接字)所使用的缓冲区空间总量。这 个总量通常应该小于 wall,并且近似于tcp 或者 udp 发送和接收设置最大值的 4 倍。
    rfc1323 ——可调参数支持 TCP 窗口缩放选项,该选项允许 TCP 使用较大的窗口大小。开启这个选项,以支持最佳的 TCP 性能。

  • 相关阅读:
    elasticsearch 基础
    docker 安装ElasticSearch的中文分词器IK
    Netty的编解码,粘包拆包,心跳检测机制
    Spring IOC 常用的注解
    @JsonView的使用
    lombok的使用以及其中的坑
    Zuul的高级使用
    SpringBoot 整合 ActiveMq
    转:Maven <resource>标签
    码农经常读错的单词
  • 原文地址:https://www.cnblogs.com/ericnie/p/5818147.html
Copyright © 2020-2023  润新知