有个服务需要部署在不同的地域,关于数据收集的方案

2020-11-06 09:15:13 +08:00
 cszchen
方案一,各节点直接访问数据库,数据库做 ip 白名单,开启 DCDN 加速
方案二,开发一个数据收集的 API 接口,各节点定时上报,开启 DCDN 加速

因为没搞过类似的,想问问大家的意见
方案一直接入库比较简单,方案二感觉更符合开发的规范,哪个可靠一些呢
1326 次点击
所在节点    程序员
5 条回复
star7th
2020-11-06 09:21:31 +08:00
如果是单纯数据上报的话,当然是走接口了。
opengps
2020-11-06 09:36:23 +08:00
跨地域会有一些中途的问题,一般来说建议解耦合,收发两端都用队列暂存缓冲下,让发不出去的消息推迟到能顺利收发时候进行,用队列记录日志也可以减少日志逻辑对主进程资源性能占用太多
zarte
2020-11-06 09:58:34 +08:00
都挺可靠的呀,逻辑部分出错的时候重试打日志就好了。网络问题不可能百分百可靠也不是你可以控制的,数据能自动补传或者手动就可以。
cszchen
2020-11-06 10:44:47 +08:00
@opengps 是啊,弄个 mq,保证至少送达一次,免得丢数据
joesonw
2020-11-06 18:13:10 +08:00
如果是比较大型的业务的话, 不怕麻烦就用 wireguard 串起来.

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/722241

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX