大家有什么方案解决远程数据库丢包的问题吗?远程是数据库是 mysql,坐标在硅谷,放程序的服务器在香港。

2016-08-26 01:02:03 +08:00
 fkbd
前提是: APP 需要每 15s 与数据库进行一次数据交换。服务器坐标和数据库坐标是定死的。

一开始是直接链接远程数据库,可是丢包太大,测试中导致数据丢失很多。
然而我的想法是,把数据库同步到香港。可是远程数据库太大了,不得不放弃这个方案。

所以一下子想不到合适的方案出来,跑出来请教一下大家。
3235 次点击
所在节点    问与答
16 条回复
UnisandK
2016-08-26 01:18:22 +08:00
vxtrans
ljbha007
2016-08-26 01:31:40 +08:00
硅谷那边做成 REST API 让香港这边访问 这样比直接连数据库要好处理一些
鉴权做好 保证数据不要外泄就 ok
messyidea
2016-08-26 01:37:11 +08:00
服务器和数据库之间加一个抗丢包的 tunnel 试试
JJaicmkmy
2016-08-26 01:58:27 +08:00
找 HE 之类的租一条专线。
alcarl
2016-08-26 02:05:19 +08:00
可以每次少返回一点数据试试,如果数据库连接时用 tcp ,只要丢包不太严重,一般不会断掉,不会丢数据的。没想明白为啥会丢数据。。。。。
fkbd
2016-08-26 02:31:20 +08:00
@UnisandK vxtrans 没什么效果

@ljbha007 正在尝试这个方法,但看起来 API 也还是会丢包

@messyidea 能给一个详细点吗?抗丢包的 tunnel 是怎么实现的?

@JJaicmkmy 天哪,这个太贵了

@alcarl 丢包率高峰时段有 40%,我也很郁闷香港到硅谷的线路为什么会这么差
ZGLHHH
2016-08-26 02:35:18 +08:00
数据库同步可以试试增量同步
ZGLHHH
2016-08-26 02:39:49 +08:00
另外,丢包问题可以试试 LotServer 、 KCPTUN 这类软件
ljbha007
2016-08-26 02:40:30 +08:00
@fkbd http 只会连接中断 不会丢包 可能是网络质量确实不好
ljbha007
2016-08-26 02:41:06 +08:00
@fkbd 哦 明白你意思了 上面是瞎说的 当我没说
octopus_new
2016-08-26 04:49:03 +08:00
如果数据库可以用 AWS RDS 的话, 我觉得可以考虑 cross region read replicas. 感觉 Amazon 的资源应该可以解决数据库同步的问题.
9hills
2016-08-26 07:12:45 +08:00
TVP 不会丢数据
9hills
2016-08-26 07:12:57 +08:00
修正 TCP
GhostFlying
2016-08-26 08:32:11 +08:00
比较贵的解决方案是两边用跨区域互通的云服务,或者用跨区域互通的云服务做反代
snnn
2016-08-26 08:54:29 +08:00
没有这么干的。你需要的是 geo-replicated database 。
walkman660
2016-08-26 10:49:57 +08:00
锐速

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

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

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

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

© 2021 V2EX