高并发搜索系统下内存池的设计和实现
2016-05-19陆兆攀刘萍萍
西安工业大学学报 2016年3期
关键词:搜索引擎
陆兆攀,刘萍萍,卢 颖
(西安工业大学 计算机科学与工程学院,西安 710021)
高并发搜索系统下内存池的设计和实现
陆兆攀,刘萍萍,卢颖
(西安工业大学 计算机科学与工程学院,西安 710021)
摘要:为了在输入关键词后能从网络搜索中快速、准确地返回信息,并有效降低搜索系统在高并发状态下频繁分配和回收内存对程序性能的影响.文中根据搜索引擎中不同的场景,设计出了可回收定长内存池,可回收变长内存池和只分配不释放内存池.实例计算结果表明:与系统默认的内存分配器对比,可回收定长内存池的效率提升了70.20%;可回收变长内存池的效率提升了13.84%;只分配不释放内存池的效率提升了90.80%.
关键词:高并发;搜索引擎;内存池;分配器器
搜索引擎是互联网最重要的应用之一,涉及信息检索、分布式处理、语意网、数据挖掘等多个领域理论和技术.合理的数据结构设计、索引,高并发系统结构的设计等都是影响查询速度的因素.搜索引擎基本工作原理己经很稳定,但其在服务方式、质量和性能等方面依然急需优化.
传统搜索引擎大都采用关键词匹配模式,在申请释放不太频繁的情况下,通常让系统进行内存管理即可,但面对海量数据的处理和存储,搜索引擎显得无能为力.在直接使用系统调用Malloc/Free、New/Delete[1]进行内存分配和释放,存在一定的弊端:比如调用Malloc/New系统根据“最先匹配”、“最优匹配”或其他算法在内存空闲块表中查找一块空闲内存,内存使用效率不高;……
登录APP查看全文
