反正有提高inetd的性能吗?

我有一个tcp服务器设置在AIX 5.3上使用inetd。

问题是来自服务器的响应非常缓慢。但是如果我有一个独立的deamon服务器,它的速度非常快。 但我的要求是,我必须使用inetd。

那么,有没有提高inetd的性能?

谢谢

通过inetd运行时遇到的一个问题是,它会在性能上引入开销。 如果性能是一个问题,那么不要使用inetd并使用独立的守护进程。

提高性能的最好方法是将inetd排除在外。 但是如果你确实需要使用inetd,这里有一些想法:

  1. Renice inetd的优先级为负。
  2. closures/closuresinetd日志logging
  3. login到更快的光盘/ RAID。

另一种可能性是您的服务正在处理一个请求或less量的请求,然后closures。 如果是这样的话,那么在负载下inetd会花费很多时间来重新启动你的服务。 所以你想避免这种情况。

最后一种可能性是,你所看到的问题是由于服务器进程没有正确终止而造成的,并且不得不使用内核资源。 在最坏的情况下,他们甚至可能会旋转。 当系统运行缓慢时,使用系统监视工具来查看实际发生的情况是值得的。

你能给我们一些关于“非常非常缓慢”和“非常快”之间区别的想法吗? 这可能是因为inetd正在做每个连接上的IP地址反向查找(我不知道这是猜测),也许你没有设置DNS服务器来回答,每个连接都会有1或2分钟的超时时间。

如果差值是“每秒10次”与“每秒12次”,那么与差异为“需要90秒响应”与“立即响应”相比,您将遇到不同的问题。

这听起来像你的TCP服务正在启动每个请求传入inetd,然后立即closures。

为每个请求分配一个像这样的新进程是非常缓慢的,所以我认为最好的地方是改变你的TCP服务,以保持活动,以在closures之前处理x个请求。