V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  flycloud  ›  全部回复第 1 页 / 共 3 页
回复总数  44
1  2  3  
@Huelse 是有这种需求,但是注意审题啊,是客户端查询。
第一种:本地有存储消息,直接客户端本地搜索啊。
第二种:客户端本地不存储消息,应该是没有什么 IM 应用会在所有会话中查询某个关键字吧,而是在某个会话里查询,直接拉取某个会话的历史消息来搜索,不就可以了?

当然也会有在后台查询关键字的情况,多半也是会指定某两个用户之间消息查询。
实在想不出来在所有用户的所有会话里查询关键字这种需求的意义,所以觉得 ES 没有适用场景。
“频繁的查询聊天数据”

其实很多是无效请求,根本没有新增消息,可以在 redis 中设置标记,真正有新消息时才去读取 DB ,可以很大成都降低 DB 压力。
说用 ES 的真是人才,还全文索引。。。

“客户端需要频繁的查询聊天数据” 意思是用户需要拉取和其他用户会话的聊天消息,而不是去全文索引查询某个关键字。
mongodb shard 再适合不过了,设计好 shard key ,保证两个用户之间的会话消息落入某一个分片中,不同的会话消息均匀分布到各个分片。比如 {sessionId: "hashed", msgId: 1},如果有群聊天也是一样的,分配一个 sessionId ,msgId 递增,以支持按会话批量按序拉取消息。

再设置一个字段自动过期删除。
246 天前
回复了 voidispiral 创建的主题 程序员 为什么 nats 这个消息队列用的这么少
我们游戏项目在用,爽的很
2022-01-13 18:39:35 +08:00
回复了 Aliberter 创建的主题 Vue.js 老哥们, 0 基础想做个 vue 后台最快多久
万事开头难。我一直做后端,js 、html 、css 什么的之前都没有接触过,然后大概看了 2 周的基础知识,就开始基于 vue-element-admin 开始撸了,头一周磕磕绊绊的,往后就感觉好多了。 感觉 vue 让前端开发太容易入门了。
2021-11-26 11:40:15 +08:00
回复了 flycloud 创建的主题 Docker docker 容器时间
@Nitroethane 感谢,另外一个程序没有用 c 库,😭
2021-11-15 22:47:01 +08:00
回复了 YuiTH 创建的主题 Apple 14 寸 M1 Max 32G 到货两天体验,总体不错,说一些小毛病。
“基本不可能单手拿起,两个手才能把电脑从桌上“抠”出来” 这个还真是,以前的方便得多。

之前很多人批的刘海屏感觉还好,软件全屏完全没感觉
2021-11-15 22:42:07 +08:00
回复了 flycloud 创建的主题 Apple 14 寸新 mac pro, shift + 触摸板轻点 不灵敏
@shiftvector 嗯,就是软件问题,单独轻点都很正常。
2021-11-08 17:36:27 +08:00
回复了 goforwardv2 创建的主题 程序员 游戏服务器和中间件
AccessSvr 存在的意义是啥?为什么用户不是和 proxy 建立 tcp 连接呢?

我现在做的游戏后端,用的 nats 在内部服务之间转发消息。
2021-09-18 10:10:28 +08:00
回复了 flycloud 创建的主题 程序员 分享一个 id 自增生成器,依赖于 redis,求大佬帮忙挑挑毛病
@JamesChen #29 谢谢,看了文档,确实啊。如果 redis.call 命令有错误会直接抛出异常了,如果执行成功,返回值一定是 True
2021-09-17 17:55:50 +08:00
回复了 flycloud 创建的主题 程序员 分享一个 id 自增生成器,依赖于 redis,求大佬帮忙挑挑毛病
@enan01 #10 没有这个问题,因为只会在主节点写 redis
2021-09-17 17:52:20 +08:00
回复了 flycloud 创建的主题 程序员 分享一个 id 自增生成器,依赖于 redis,求大佬帮忙挑挑毛病
@draymonder #13

第一个问题确实存在。
因为本来就会大量用到 redis,所以并没有增加依赖。
不急,再等等。

以上消息发自 MacBook Pro (Retina, 13-inch, Late 2013)
2021-09-17 10:51:29 +08:00
回复了 flycloud 创建的主题 程序员 分享一个 id 自增生成器,依赖于 redis,求大佬帮忙挑挑毛病
@lysS 没懂你的意思。

我们业务目前没有使用 mysql,不想因为一个 id 生成新增加一个组件。

“不考虑持久化,直接 uint64 自增” 这个分布式环境你咋个自增
2021-09-17 10:41:26 +08:00
回复了 flycloud 创建的主题 程序员 分享一个 id 自增生成器,依赖于 redis,求大佬帮忙挑挑毛病
@Ariver 集群或者单实例都支持呀,反正只用到了一个 key 。主要是可以规避时间回调问题。
2021-09-17 10:29:43 +08:00
回复了 flycloud 创建的主题 程序员 分享一个 id 自增生成器,依赖于 redis,求大佬帮忙挑挑毛病
@zhaokun 有道理
2021-09-17 10:29:30 +08:00
回复了 flycloud 创建的主题 程序员 分享一个 id 自增生成器,依赖于 redis,求大佬帮忙挑挑毛病
@GM 我们业务没有用 mysql,🤣
2021-09-14 16:39:49 +08:00
回复了 flycloud 创建的主题 程序员 oauth2 流程疑问
@Saxton #13 嗯嗯,那就是如果不需要从微信获取用户信息的话,只用维护自己的 token 就行了。自己的 token 过期了,就再走一遍授权流程重新登录嘛?
2021-09-14 16:33:44 +08:00
回复了 flycloud 创建的主题 程序员 oauth2 流程疑问
@Saxton #10 哦哦哦,后端通过 code 交换出 openid 和 access_token 后,再自己生成一个 token 给前端用,同时存储 token 、openid 、access_token,后续如果需要 refresh token,也是由后端来完成的。这样对吧?
1  2  3  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   广告投放   ·   实用小工具   ·   652 人在线   最高记录 5497   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 49ms · UTC 00:02 · PVG 08:02 · LAX 16:02 · JFK 19:02
Developed with CodeLauncher
♥ Do have faith in what you're doing.