设为首页
收藏本站
开启辅助访问
全部
问与答
创意
技术
酷工作
生活
交易
资源
节点
飞墙
Follow
明白贴
人人影库
报酬
登录
注册
飞社-令人惊奇的创意工作者社区-
›
首页
›
Java
›
请教下微服务间大批量数据获取一般是如何处理的 ...
FSHEX=FIND+SHARE+EXPRESS
飞社-令人惊奇的创意工作者社区- 是一个关于发现分享表达的地方
现在登录
没有账号?
立即注册
推荐主题
›
人生求教 老爸掏光家底炒股亏损 30 年 该不
›
婚后家庭财产如何分配?
›
新加坡家宽送的路由器竟然是 BE18000....
›
各位程序员,你们的域名还在坚持续费吗,还
›
公司要求在清明节期间退还前年年终奖
今日热议主题
分享个 Dify 定时 cron 触发工作流 workflo
iPhone 17air 推动 esim 发展,联通测试页
[南昌/全职] 技术总监 18-22K/月
出闲置 MIBOX S (海外版),无箱说,自定 85
博客主题完工啦~
移动真狗啊,手机卡限速
Nextcloud 中的应用商店如何代理访问
Mac Termius 连接不上局域网 Linux 电脑
深圳的电单车的横冲直撞,闯红灯,鸣笛,应
求一款 markdown 编辑工具
请教下微服务间大批量数据获取一般是如何处理的
gibber
· 2024-10-17 08:24:57 · 369 次点击
比如 a 服务需要从 b 服务获取几十万的数据处理后生成自己的业务数据,如果 b 服务直接从数据库中一次性查出来返回,对内存的压力就很大。
现在的方案是使用分页,每次最多 1 万条记录,获取一批处理一批,把整个业务处理的时间拉长了。
想知道还有没有更好的办法
举报
·
369 次点击
登录
注册
站外分享
微信扫一扫
QQ分享
微博分享
豆瓣分享
复制链接
显示全部
|
最新评论
16 条回复
沙发
ZGame
初学
2024-10-17 08:28:05
1.内存压力大?一个作业才几十万数据。。 如果怕影响 a 库业务性能,直接给 a 库做一个从库,从从库里拉数据。
2.走 cdc 那种从日志里读取,这种时效性会好点。我是感觉没必要
板凳
csys
初学
2024-10-17 08:29:35
1.
b 服务把数据保存成文件
a 服务下载文件后进行处理
2. kafka/cdc
地板
securityCoding
初学
2024-10-17 08:29:41
单独落离线表,明令禁止直接从线上业务表捞数据
5#
ymz
小成
2024-10-17 08:36:53
kafka
6#
m2276699
小成
2024-10-17 08:46:01
数据源之间冗余
7#
xiaohupro
小成
2024-10-17 08:46:27
时间线拉长应该是由于同步导致的吧,查一万处理一万。可以把查处来的数据立马丢给 Kafka 或者 Rabbit MQ 这类消息队列,A 服务监听队列,只要有数据就一直处理,这样应该会分批同步处理快一些。
8#
sagaxu
初学
2024-10-17 08:47:12
这是两个步骤
1. b 服务从 db 获取几十万条数据
2. a 服务从 b 服务获取完整数据
第二个步骤在分页之后,从 1 次 rpc 变成几十次,内网 rpc 的开销是毫秒级的,几十次 rpc 增加几十毫秒,不会显著拉长处理时间。
那问题就出在第一步,db 端分页之后,几十次小量查询,开销远大于单次全量。这种情况就不建议分页,而是分批,b 服务一次查询分批读取,写入文件或者消息队列等暂存设施,返回给 a 的是数据的指向,a 自己再分批读取
9#
ymmud
初学
2024-10-17 08:58:30
才几十万条,服务之间类似于流式处理直接拉过去就行了
10#
SmartTom
小成
2024-10-17 09:02:18
a 服务直接做多数据源直连 b 服务数据库/doge
下一页 »
1
2
/ 2 页
下一页
浏览过的版块
求职
分享创造
返回顶部