我正在运行最新版本的HAProxy 1.5(dev15),而且我注意到在HAProxy运行一段时间后,内存使用率从最初的0.9%上升到1.9%,即使在那里没有更多的传入请求。
问题是,由于我的网站是新的,而且它是上升和下降,我敢肯定,几乎没有任何要求,除了从我自己的testing。 我的testing通常持续10-20分钟,完成后closuresHAProxy后面的服务器,并使HAProxy保持运行。 换句话说,额外的1%的内存可能是由于在testing过程中处理我的请求而引起的,但是当服务器closures并且没有人再发出请求时,HAProxy不应该释放它们吗?
有人可以解释HAProxy这个内存消耗的可能原因吗?
不,不应该。 操作系统将分配物理内存,因为无论应用程序是否告诉它,都可以使用它。 特别是释放内存会增加使用内存的开销,因为应用程序必须从操作系统请求内存。
只要无所事事,只要操作系统没有更好的使用,应用程序就会保留内存。 它可以再次使用它,而无需对操作系统进行特定的调用。 如果需要,操作系统仍然可以将其用于其他目的。 所以这是最好的情况