各位:
本人一直觉得UNIX的性能是一个比较棘手的问题,因为它无法用一种简单的方法来衡量,也没有什么公式可以定性的计算出来,两个不同的应用,你无法说CPU利用率高的性能就一定不好,很多人在遇到这个问题时都觉得很模糊,我在这方面的认识也很差。最近在和HP谈论服务器升级的事,感觉他们也没有什么很科学的依据,只是一味的放大。 所以希望各位能谈谈自己在这方面的经验和看法,谢谢大家。
al.
liufang 回复于:2003-02-12 14:29:42 |
这个问题根本无法回答,系统调优,是最难的问题,每台小型机运行的都是本机系统系统和数据库系统,单独一个UXIX系统一般也没人用,你把UNIX调到最佳状态,数据库未必是最佳状态,况且每种数据库所需参数又不一样,你能把UNIX研究通,再把数据库研究通,那很难的, |
angeldudu 回复于:2003-02-12 15:46:32 |
总应该有对应各种情况的调优方案吧。不防试举一例。 |
hpux 回复于:2003-02-12 15:50:02 |
根据不同的应用,参数也有不一样的时候,尤其是内存和交换区、硬盘的关系! |
wdbj 回复于:2003-02-12 16:55:22 |
性能的确是个头疼的问题啊,我指的头疼是扯皮问题。
我碰到N次了,客户一碰到性能问题就指责说系统没有调试,却不知十次有八次是他们自己的应用作的烂,写的程序烂的一塌糊涂,系统要是稳定才新鲜呢。 |
ahyan 回复于:2003-02-12 16:56:03 |
应用和IO |
albert 回复于:2003-02-12 18:09:26 |
wdbj兄,hpux兄,能举几个实际的例子吗?谢谢啦。 |
uman 回复于:2003-02-13 04:25:24 |
我也没什么高见了,所知不多.
个人认为,谈论UNIX的性能问题,应该基于一个前提,硬件、软件平台一样(至少OS和主测试程序应该一样,可以不含补丁),不然没法比。就次可以作出不同的配置来比较,比如交换区不一样,所打补丁不一样等,,,,, 但是很难不和别的平台比,那么主测试程序应该一样的,咳咳,这个嘛,基本上是更加复杂了,要考虑各种调度,很复杂,但是结果应该很简单。 据说好象测试CPU也就是用程序测试,不停的算,其实那个也未必全面。 好的测试程序很难做的。我没做过测试方面的工作。 性能,在某些方面是次要的,我更关心稳定性。 |
hpux 回复于:2003-02-13 08:43:32 |
[quote:ed6c12a88e="hpux"]根据不同的应用,参数也有不一样的时候,尤其是内存和交换区、硬盘的关系![/quote:ed6c12a88e]
比如,swapmen_on = 0的时候,内存很大100G,但是交换区却设置成只有2G的话,活活浪费98G的内存!这样的性能当然不能和100G内存都用上的性能好!【当然这仅是很特殊的例子,稍懂HP-UX内存管理的都不会这么做】 另外,几个硬盘性能不一样的时候,交换区设置在哪个盘、怎么设置,也是很影响性能的!另外,对于I/O很频繁的应用,怎么设置RAID,怎么选磁盘格式(RAW盘还是文件系统),也很重要;这时如果拼命去考虑CPU的处理能力就偏了。 |
leyearn 回复于:2003-02-13 08:59:50 |
就象albert兄所说UNIX的性能的确是一个比较棘手的问题
怎么说呢 感觉UNIX的性能是个很抽象的问题,只能随着对操作系统和数据库等等比较核心的配置的深入了解,而解决。 |
wdbj 回复于:2003-02-13 09:06:22 |
有一次碰到一个问题,客户的机器上运行WEBLOGIC,每天不定时的就特别慢,而且一旦慢了就再也无法快起来,平常正常的时候特别好。客户死活说是系统问题,最后建议他找到那家开发应用的公司,他们都不承认是程序不好,最后干脆就抓到一次慢的时间,查看同时间的WEB访问日志,最后发现有几个很简单的JSP程序,一旦调用立刻就导致系统CPU居高不下,我当着他们面演示了好几次,没有一次不成功的。客户这才哑巴了。 |
Janson-Chen 回复于:2003-02-13 14:20:01 |
[quote:1ea3a0a068="wdbj"]有一次碰到一个问题,客户的机器上运行WEBLOGIC,每天不定时的就特别慢,而且一旦慢了就再也无法快起来,平常正常的时候特别好。客户死活说是系统问题,最后建议他找到那家开发应用的公司,他们都不承认是程序不好,..........[/quote:1ea3a0a068]
只要系统不是5年前的,设置基本正确。 绝大多数性能问题是由于应用引起的。 |
playboy 回复于:2003-03-03 20:50:26 |
我觉得,系统性能的调优需要结合硬件和应用综合考虑。
首先要分析应用中用到的系统资源(内存,I/O,CPU,网络等),这需要应用的开发者提供一些资料,比如开发语言、主要算法、用到的其他产品(比如中间件等),由有经验的工程师分析该种应用用到的主要系统资源。 然后,在增加测试压力的时候,监测系统消耗的资源(cpu,mem,i/o,net,ipc等),在应用出现问题时根据提示的错误分析可能的错误原因,并有一定程度的可信任度后,分析操作系统设置的核心参数,是否是核心参数的限制。主要考虑最大进程数,最大打开文件数,IPC资源,交换区域大小等,可以适当的修改参数,并重新测试,看是否有效果。无限修改系统参数是不可取的,需要根据硬件所能承受的范围,特别是mem的参数,否则会导致系统的崩溃。 数据库性能的调优一般数据库厂商有比较全面、仔细的文档、监测工具和日志文档,根据这些资料、相关有经验的DBA、应用、操作系统参数、硬件环境,通过若干次的压力测试后,可以达到一个比较适合你现在环境的各类参数的值。 这只是我的个人意见,请多多指教。 |
oldv 回复于:2003-05-15 17:18:13 |
[quote:4142e97d48="hpux"]
比如,swapmen_on = 0的时候,内存很大100G,但是交换区却设置成只有2G的话,活活浪费98G的内存!这样的性能当然不能和100G内存都用上的性能好!【当然这仅是很特殊的例子,稍懂HP-UX内存管理的都不会这么做】 另?.........[/quote:4142e97d48] 据说交换区不能太大,一般2GB就够了。但hpux兄所言swapmem_on=0是不是把交换区设置在内存里?hp-ux又是在哪里设置此参数? |
zk882 回复于:2003-05-18 14:37:06 |
本人目前也遇到了性能问题,机器运行一段时间后就死机。通过查资料,我有两点收获:一是加大交换区,另外调VMM参数 |
考拉熊 回复于:2003-06-09 10:28:44 |
swap一般为内存的1-2倍,swapmem_on参数是否打开与您的具体
应有有关,如果内存不是很多建议关掉这个参数,因为内存用完时,会用 swap作交换,系统会变得非常慢。如果有足够的磁盘空间,swap当然是 大一点没坏处啦! |
延伸阅读
文章来源于领测软件测试网 https://www.ltesting.net/