- 论坛徽章:
- 0
|
由于这两天查询db服务器(P5 550)的aio Server进程很多,竟然达到320个,而我的最大值只设为80个,怀疑有点异常。在IBM论坛找到一篇文章。\r\n\r\n以下是IBM论坛的文章内容:\r\n\r\n----------------------------\r\n环境 产品:RS6000\r\n 平台:RS\r\n 版本:AIX 4 \r\n问题 异步I/O (aio) \r\n解答 如果是同步I/O,当一个I/O操作执行时,应用程序必须等待,直到此I/O执行完.\r\n相反,异步I/O操作在后台运行,I/O操作和应用程序可以同时运行,提高了系统性能.\r\n使用异步I/O会提高I/O流量,如果应用是对裸设备进行操作,这种优势更加明显.\r\n因此象数据库,文件服务器等应用往往会利用异步I/O,使得多个I/O操作同时执行.\r\n\r\n1. 如何知道是否需要异步I/O?\r\n* 执行命令:\"vmstat # #\" 如果\"wa\"值超过25%.\r\n* 执行命令:\"iostat # #\" 如果\"%tm_act\"值超过35%. \r\n2. 查询有几个AIO服务器: pstat -a | grep aios | wc -l \r\n3. 应该设几个AIO服务器?\r\n一般为硬盘数的10倍,但不要超过80. \r\n4. AIO驱动程序: bos.rte.aio \r\n5. 配置AIO为可用: # smit chgaio -> \r\n STATE to be configured at system restart [available] \r\n----------------------------\r\n\r\n\r\n发现针对实际情况需要作一点补充\r\n\r\n“. 查询有几个AIO服务器: pstat -a | grep aios | wc -l ”,结果数量达到320个,而最大值只设置为80个。让人一时迷惑。\r\n\r\n后经过和ibm工程师沟通,发现MAXIMUM number of servers 是针对每个CPU而言的,即MAXIMUM number of servers per cpu [80]。所以对多CPU的机器,最大值可能达到80xcpu个数。此处cpu个数并非物理个数,而是逻辑个数,即lcpu=?,通过vmstat 1 1可看到的lcpu=?的数量。\r\n通常P5的机器是双核的,显示的结果=2倍的物理cpu个数。如我的机器2个双核cpu,则显示的lcpu=4,最终aio server的数量=80x4=320。\r\n\r\n因此关于“. 查询有几个AIO服务器: pstat -a | grep aios | wc -l ”此点,需要注意查询的结果要除以lcpu的个数,再和设置的MAXIMUM number of servers [80] 来比较,得出目前aio server的设置是否合适。 |
|