求问 MySQL 数据库读写分离由数据库中间件实现和程序实现的性能对比

2016-03-30 23:35:29 +08:00
 irockytan
有没有人有过类似测试或者类似方案的考虑?或者这方面的文章?
4094 次点击
所在节点    程序员
15 条回复
cevincheung
2016-03-31 03:41:43 +08:00
这个怎么说呢……

小博客,你用中间件干啥,慢的要死
企业应用, what ?你居然没用中间件?牺牲掉一定的性能换来全局集群的负载均衡的负载能力的提升还是有必要的。
SlipStupig
2016-03-31 04:00:56 +08:00
目前用过 360 的 atlas 还行,还有一个就是 mycat 看了测试报告也还不错
wupher
2016-03-31 07:59:02 +08:00
用过一段时间的 Fabric ,无论从性能还是稳定性上来说都不是太推荐。

如果是大型应用,个人以为最好还是架构师在 Project 开始时考虑好性能需求,引入多数据源。(如果能预测的话)
irockytan
2016-03-31 08:00:55 +08:00
@cevincheung 电商应用,因为只针对上海客户,目前来说用户量不太大,所以一开始是没有用数据库的中间件的,压力也在能接受的范围内,最近准备加入读写分离,所以考虑使用哪种方案,不知道你有什么推荐的么?
irockytan
2016-03-31 08:02:06 +08:00
@wupher 多数据源的配置有预留的,按照你的方案,是在应用层来实现读写分离?
irockytan
2016-03-31 08:02:27 +08:00
@SlipStupig 谢谢,我回头了解一下
flikecn
2016-03-31 08:13:58 +08:00
我用 Go 写了一个 https://github.com/flike/kingshard 。可以看看
irockytan
2016-03-31 08:30:02 +08:00
@flikecn 在车上粗略浏览了一下 Readme ,回头细看,不知道有没有性能对比的测试之类的?谢谢!
flikecn
2016-03-31 09:07:48 +08:00
@irockytan 有性能测试相关文档,只和直连 MySQL 对比了。
fengkuok
2016-03-31 09:14:01 +08:00
这得看你的项目大小
noahzh
2016-03-31 09:19:00 +08:00
中间件的性能损耗最大,因为多了一次转发,程序不需要改造.反之就是性能没有损耗,程序要大改.
markmx
2016-03-31 10:07:33 +08:00
@flikecn 你这个和 MYCAT 有啥区别呢。。
是不是也是模拟 MYSQL 服务端?
flikecn
2016-03-31 14:57:40 +08:00
@markmx 是模拟 MySQL 服务端。具体区别还蛮多的,你可以看看文档。:)
cevincheung
2016-03-31 16:01:58 +08:00
@irockytan

360Atlas
https://github.com/Qihoo360/Atlas

国人开发的 OneProxy 。都可以尝试一下(这个貌似是商用
irockytan
2016-03-31 23:00:13 +08:00
@cevincheung
@flikecn
@SlipStupig
@wupher
这两天有点小忙,月度大促结束,有一些收尾的工作,等周末花点把你们介绍的中间件了解过后再来和各位讨论,谢谢了!

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

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

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

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

© 2021 V2EX