V2EX Aidenboss 的所有回复 第 1 页 / 共 6 页
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX    Aidenboss    全部回复第 1 页 / 共 6 页
回复总数  117
1  2  3  4  5  6  
好奇问下是如何做到即可以 chat ,又可以 draw 的?感觉有点像: https://github.com/microsoft/visual-chatgpt/
2022-11-05 01:55:56 +08:00
回复了 Aidenboss 创建的主题 Go 编程语言 搞了好久的,终于为 SDB 增加了 lua 脚本
@lesismal 嗯嗯,那看起来是:gopher-lua 不是并发安全的,但多个 state 是没问题的。至于性能,没有考虑的,如果要考虑限制下 lua 脚本的并发数量就好了。
2022-10-28 09:17:51 +08:00
回复了 Aidenboss 创建的主题 Go 编语言 搞了好久的,终于为 SDB 增加了 lua 脚本
@ClarkAbe 如果每个 lua 请求都是新的 State 呢
@gaodq 这是一个非常好的问题。我参考了 tendis 和 kvrocks 的实现: https://github.com/Tencent/Tendis/blob/unstable/src/tendisplus/commands/list.cpp#L1425

https://github.com/apache/incubator-kvrocks/blob/unstable/src/redis_list.cc#L326

发现他们都是采用了顺序后移的方式,复杂度是 O(n)。SDB 会好好考虑如何实现这个逻辑。
2022-03-28 12:40:51 +08:00
回复了 Aidenboss 创建的主题 Go 编程语言 SDB 2.0.0 发布,增加了主从架构
@dacapoday 好问题。首先 SDB 和 redis 定义还不太一样。然后 redis 的协议对 SDB 还是比较累赘的。所以目前没有支持的打算。
2022-03-28 12:40:12 +08:00
回复了 Aidenboss 创建的主题 Go 编程语言 SDB 2.0.0 发布,增加了主从架构
@LoNeFong 感谢支持
2022-03-28 00:14:11 +08:00
回复了 Aidenboss 创建的主题 Go 编程语言 SDB 2.0.0 发布,增加了主从架构
@ToBeHacker 感谢支持。
2021-12-26 00:13:16 +08:00
回复了 Aidenboss 创建的主题 Go 编程语言 分享个自己写的项目: SDB
@wzw 其实看了一下它的 commit 就知道,今年的 commit 次数不超过 20 次。
2021-12-10 12:59:33 +08:00
回复了 Aidenboss 创建的主题 Go 编程语言 分享个自己写的项目: SDB
@yrj 先回答第一个问题:从我自己的测试结果和网友的测试结果来看,pebble 的性能更好些: https://blog.csdn.net/huxinglixing/article/details/116156322 ,这是网友的测试结果。
我也用了 grafana 的监控,看起来确实如此。

[主打大字段的缓存存储,围绕此丰富功能。] 我想想,感谢感谢 ~
2021-12-10 12:03:40 +08:00
回复了 Aidenboss 创建的主题 Go 编程语言 分享个自己写的项目: SDB
@qq1340691923 可以举例说明下吗?
2021-12-10 12:03:26 +08:00
回复了 Aidenboss 创建的主题 Go 编程语言 分享个自己写的项目: SDB
@Joker123456789 说的在理。其实 SDB 的定位不是 redis + 关系型数据库优点的结合体。而是在开头讲述的那些业务问题,才是 SDB 的立身之本。

我这边的想法也是:将易用性打造的足够好。提供更丰富的数据结构;提供更丰富的查询能力;提供 admin web ui 等等。

总之就是:SDB 的定位不是取代,而是解决业务问题。
2021-12-10 10:00:37 +08:00
回复了 Aidenboss 创建的主题 Go 编程语言 分享个自己写的项目: SDB
@wzw 好选择。。。
2021-12-10 10:00:25 +08:00
回复了 Aidenboss 创建的主题 Go 编程语言 分享个自己写的项目: SDB
@codespots 好的,今晚就去改
2021-12-10 10:00:13 +08:00
回复了 Aidenboss 创建的主题 Go 编程语言 分享个自己写的项目: SDB
@dcoder 计划今年出一个集群的方案,到时候邀请大家一起 review review~
2021-12-10 01:06:33 +08:00
回复了 Aidenboss 创建的主题 Go 编程语言 分享个自己写的项目: SDB
@huyujievip 感谢支持 ~
2021-07-22 19:04:47 +08:00
回复了 Aidenboss 创建的主题 Java 轻量级 Java 应用消息通知中心
@MidCoder 如果你需要解决,可以用: https://www.xuxueli.com/xxl-mq/
2021-07-22 16:47:58 +08:00
回复了 Aidenboss 创建的主题 Java 轻量级 Java 应用消息通知中心
@MidCoder
你没理解这个场景,既然使用了 redis,就不需要保障消息可靠和一致性。
这个场景只需要解决消息传递即可,这也是这个项目的本意。
如果要做更牛的功能,直接用 RabittMQ 解决好了。
不需要什么事情都推到大规模、亿万消息、机制性能。技术是为了解决问题而存在的。只要解决那个场景的问题,自然就有存在的价值。如果脱离的场景,只考虑技术难点,会忽略了解决这个问题的本质。
2021-07-22 11:43:55 +08:00
回复了 Aidenboss 创建的主题 Java 轻量级 Java 应用消息通知中心
@Aidenboss
重新补充下细节,topic 消息负载使用 topic 内消息分片解决。怎么解决呢?
默认分成 8 个分片数「具体随意调整」
前置条件:
redis-cluster 保存每个 topic 的订阅者信息,以及订阅者的 key 。比如 key = topic_s_list,value = [c1:1,3,6,7,c2:2,4,5,8]
每个消息都会按照 routing 算法计算出 key,每个消息都会发送到对应的 key 订阅通道,如:msg:1,代表发送到 msg1 发送给 topic1,只有 c1 才能接收到 msg1 的消息。


当加入一个新的 topic 订阅者,就先发送 topic:stop 指令,c1 、c2 接收到指令后,之后的消息先缓存在 redis 的待发送 list topic_s_pengding 中
c3 通过 lua 脚本,将 topic_s_list 修改为:[c1:1,3,4,c2:2,5,c3:6,7,8],并发送 sub_update 指令
c1 、c2 接收指令后,重新订阅的 key 变成 topic:1 、topic:3 、topic:4 ; c2 的订阅的 key 是:topic:2 、topic:5 ; c3 订阅的 key 是 topic:6 、topic:7 、topic:8
将 topic_s_pengding 中的 key 重新发送到 topic 中

中间会有类似 kafka rebalance 的现象。但其实并不影响消息的生产。

技术是为了解决问题的,提出没解决的点,照着点去设计就好。
2021-07-22 11:31:56 +08:00
回复了 Aidenboss 创建的主题 Java 轻量级 Java 应用消息通知中心
2021-07-22 10:07:24 +08:00
回复了 Aidenboss 创建的主题 Java 轻量级 Java 应用消息通知中心
@MidCoder
1. redis 单点就由 redis-cluster 解决。为啥要让应用层解决中间件单点的问题。
2. center 是可以水平扩展的,已经解决了多 topic 的问题了。如果是单 topic 的消息负载,这点确实提醒了我,没有做。但使用 center + redis 参考 redis 模糊匹配的订阅模式即可。

以上已经解决了你的问题。
1  2  3  4  5  6  
关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     1334 人在线   最高记录 6679       Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 20ms UTC 17:01 PVG 01:01 LAX 09:01 JFK 12:01
Do have faith in what you're doing.
ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86