Performance 存储名称与按id从缓存中检索
存储已发送电子邮件的简单mongodb集合:Performance 存储名称与按id从缓存中检索,performance,mongodb,memcached,Performance,Mongodb,Memcached,存储已发送电子邮件的简单mongodb集合: { msgid: objectid senderid: <some objectid>, sendername: <some name>, recip: [{memid:<objectid>, name:<some name>}, {memid:<objectid>, name:<some name>}, ...] } { msgid:objec
{
msgid: objectid
senderid: <some objectid>,
sendername: <some name>,
recip: [{memid:<objectid>, name:<some name>}, {memid:<objectid>, name:<some name>}, ...]
}
{
msgid:objectid
森德里德:,
sendername:,
recip:[{memid:,name:},{memid:,name:},…]
}
包含有关邮件发件人和收件人的信息。现在,我正在尝试决定是在邮件中存储发件人/收件人名称,还是在检索邮件后解析它们。“解析”是指在主系统的memcached缓存中按id查找名称。每个邮件可能有1-10个收件人,我每个请求检索10-20个邮件,所以在最坏的情况下,我需要在每个页面请求中查找200个名称。该站点的负载将很高,因此我担心memcached上的负载,但另一方面,将名称与消息一起存储将大大增加磁盘空间的使用
非常感谢您的任何建议
将名称与消息一起存储
将增加使用的磁盘空间
戏剧性地
不要在意磁盘空间——磁盘空间什么都不是,它很便宜
毫无疑问,如果您的系统将高负载存储在recip
上,那么您需要的一切(甚至包括母亲、父亲的姓名;)