当前内存数据库( NoSQL) 、嵌入式数据库技术在高并发高性能系统中得到了广泛的应用,但对于复杂对象数据的 读取效率仍然低下,研究发现主要性能瓶颈有两个: 一是内核态与用户态间的内存拷贝,拷贝消耗时间与复杂对象的数据 量成线性增长; 二是从数据库数据到运行时数据对象的格式转化操作,不但需要开辟新的内存空间存储运行时数据对象, 而且还需要解析原始数据并拷贝至新对象之中。为此,提出了一种基于内存映射( memory mapping) 文件的复杂对象共享 读取方法。借助内存映射文件与自定义内存分配器,实现了结构复杂的 C++标准模板库容器对象跨进程无拷贝、无格式 转化的共享,有效降低了数据读取延时