一个多用户程序,用文件内存映射来管理用户的存档,不知是否合适? 一个多用户程序,同时在线用户数可能会好几k,要对用户数据及时存档,以防丢失,每个用户的数据可能几百个字节到几十k字节不等,我想把它们都存在一个文件里,然后用文件内存映射来管理这个文件,是否合适呢?主要是因为用户的数据会频繁的增加删除,所以不知道用内存映射是否合适,我现在还只有用内存映射读文件的经验 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 我的机器Celeron1.7G,256M内存,做到1K左右个内存映射都没有问题(我没有测试过更多),你的应该可以扛得下3K左右吧。 不合适. 由于用户数据不定长,且涉及到新增和删除操作, 很难设计出一个合理的数据结构来存储用户数据并快速定位到指定用户的数据上. 如果使用复合文档来管理, 会浪费很多内存空间, 同时使用内存映射文件虽然可以避免频繁的IO操作, 但不能保证用户数据及时存档, 如果程序或系统出现异常,或者突然断电, 会导致用户数据丢失.可以考虑使用数据库存储用户数据. 程序中只保存每个用户的ID, 根据用户ID更新相应的数据库记录. 永久连接HTTP,客户端什么情况再次向服务器发送请求?什么情况下服务器关闭连接? 是哪些斑竹有事没事乱删帖????????!!!!!!!! 如何将 窗口中的内容存到 黑白的 bmp 文件中 跳槽了,散分 如何在vs2003.net中进行消息映射? corba应用,客户端如何访问服务器的防火墙? 有个问题想请教大家! ★★★★ 我是VC新手,有个程序有问题,想问问大家? Visual C++ 用英文怎样读? MFC 在类A中声明的为什么不能在类B之中调用 directx开发播放器的问题? 怎么样才能在C++中找到控件工具栏
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货