作者热门文章
- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
我正在编写聊天程序,我想做聊天记录,所以我需要存储一些值。首先是发布数据,例如:
socket.on('send private',function(data){
var d = new Date();
var doc1 = { 'name': 'message id ' + d.getTime(), 'user_from': data.userfrom, 'user_to': data.userto, 'message': data.message };
client.hmset('messages:' + d.getTime(), doc1, function(err, replies) {
});
});
但是当我从历史中获取数据时,我不知道如何按日期和 user_from + user_to 对数据进行排序。我想让两个用户之间的聊天变得私密。
我不确定是否可以使用 redis - 我是这个 nosql 数据库概念的新手。我想我应该以某种方式使用哈希,但不知道如何使用。
感谢阅读,抱歉我的英语不好。
最佳答案
使用 Redis,您将需要管理自己的索引。人们通常使用带有标准分隔符的键来执行此操作。
例如,尝试 messages:message_id 或 messages:user_id_message_id 并使用 incr 键来跟踪您当前的索引。这很有效,因为 Redis 具有原子写入。这是完全可行的,但您可能希望将历史记录存储在备用数据存储中,因为 Redis 通常被视为非持久性缓存,并且您可能会在某个时候丢失一些历史数据。
关于redis - Redis保存私密聊天记录的结构类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29426322/
我想要一个本地Gitorious无法在我的本地网络之外访问的安装,并且尽可能安全和私密。存储库将保存我需要保密和安全的代码,以防黑客攻击或盗窃。 我不是 Linux 专家,当然也不是 git/gito
一旦我创建了 FormData var form = new FormData(); form.append("hash", this.S.Storage.get('h_token')); 我不能将它
我是一名优秀的程序员,十分优秀!