我们偶尔会遇到问题,即由于内存分配失败,我们长时间运行的服务器进程(在Windows Server 2003上运行)引发了异常.我们怀疑这些分配是由于内存碎片而失败的.
因此,我们一直在寻找一些可能对我们有帮助的替代内存分配机制,我希望有人可以告诉我最好的一个:
1)使用Windows 低碎片堆
2)jemalloc - 用于Firefox 3
3)Doug Lea的malloc
我们的服务器进程是使用跨平台的C++代码开发的,因此任何解决方案都可以理想地跨平台(do*nix操作系统会遭受这种类型的内存碎片吗?).
另外,我认为LFH现在是Windows Server 2008/Vista的默认内存分配机制吗?如果我们的客户只是升级他们的服务器操作系统,我当前的问题会"消失"吗?