-2

I am running a network server application in CentOS 6.5, having 200 forks with 100,000 maximum client per fork. Normally the traffic is 200K requests per minute. I have seen that CPU load gets high up to 200% and then comes back to normal around 2% within minutes. It is happening around every 30 minutes or so.

The same application running in RHEL 5.8 have no such issues.

I want to know that is there major difference in performance of CentOS with RHEL.

I have clean the code for any memory leaks using valgrind, but having same issue. These things come in my mind that CentOS is taking load for creating forks after they die. CentOS kernel is not using fast timers. CentOS memory manager is not efficient as RHEL. Should I try CentOS 6.3, either it is more stable than new release CentOS 6.5.

4

1 回答 1

1

几天后,我们发现我们的代码中存在一个错误,在 RHEL 中进行分段错误,并且由于多进程应用程序在此之后诞生了新进程,并且 RHEL 有效地释放了导致分段错误的该进程的内存。

但是,当我们在 CentOS 中尝试相同的应用程序时,该错误不会触发分段错误,而是使进程处于睡眠模式,内存消耗极高,接近 25%。通过这种方式,进程留在系统中并持有导致高负载和峰值的内存。

结论是,在 CentOS 中运行时,需要非常擅长编码中的内存泄漏检查,因为与 RHEL 不同,CentOS 不够聪明,无法自愈。

于 2014-09-22T14:12:30.957 回答