【发布时间】:2014-02-07 03:11:40
【问题描述】:
我正在开发一个用于私人消息传递的网络应用程序,灵感来自电子邮件服务 (Gmail),在客户端使用 AngularJS,在 RESTful 服务器上使用 MongoDB (Mongoose) 和 NodeJS。
目前,这是 db 结构
{
conversation: {
user1: {
type: mongoose.Schema.ObjectId,
ref: 'User'
},
user2: {
type: mongoose.Schema.ObjectId,
ref: 'User'
},
user1Flags: [String],
user2Flags: [String],
messages: [{
title: String,
content: String,
sender: {
type: mongoose.Schema.ObjectId,
ref: 'User',
},
sentAt: Date,
createdAt: Date,
attachments: [String],
senderMetaData: {
archived: Boolean,
deleted: Boolean
},
recipientMetaData: {
archived: Boolean,
deleted: Boolean
}
}]
}
}
嗯,我对此很满意,但我对 NoSql 没有太多经验。
我想听听您对此的看法,这是正确的做法吗?
【问题讨论】:
-
您是否有理由不利用自计算机网络出现以来已标准化的 POP3/IMAP/SMTP 协议?
-
这应该是更复杂的应用程序的一小部分,并且私人消息不是基于电子邮件地址。