高手问答第 155 期 — 分布式系统架构落地与瓶颈突破

局长 发布于 2017/05/30 20:20
阅读 7K+
收藏 29

OSCHINA 本期高手问答(2017 年 5 月 31 日 — 6 月 6 日)我们请来了@gao_xianglong2017 (高翔龙)为大家解答关于分布式系统架构落地与瓶颈突破方面的问题。

高翔龙,杭州云集微店架构师,基础架构组负责人,负责基础技术平台的架构设计和中间件研发等工作,技术书籍《Java虚拟机精讲》作者,热衷于开源技术,常年游走在 GitHub 上。

任何一本书,都是一个用于承载知识的载体,读者可以从中探寻自己想要知道的答案。

对于我而言,书本就是带我领略奇妙计算机世界最快的一条途径。之所以想创作一本与大型分布式系统架构相关的书籍,是因为我在最近几年的实际工作中经历了太多的技术难题。每当我和我的团队尝试解决这些问题之前,时常想着能否从市面上现有的架构书籍中寻求到解决方案;但事与愿违,目前市面上高歌架构理论的读物居多,而真正讲解大型网站在架构演变过程中出现技术难题时应该如何解决的书籍却寥寥无几。对于这块领域的空白,我想尝试着去创作,尽量把我自己脑海中的内容写出来,让更多人受益,毕竟架构是需要落地的,否则便是一纸空谈。(by 高翔龙)

为了鼓励踊跃提问,@博文视点 会在问答结束后从提问者中抽取 5 名幸运会员赠予《人人都是架构师:分布式系统架构落地与瓶颈突破》一书。

购买链接:https://item.jd.com/12180592.html

OSChina 高手问答一贯的风格,不欢迎任何与主题无关的讨论和喷子。

下面欢迎大家就分布式系统架构落地与瓶颈突破方面问题向@gao_xianglong2017 (高翔龙)提问,请直接回帖提问。

加载中
1
博文视点
博文视点

OSC 第 155 期高手问答 -- 分布式系统架构落地与瓶颈突破

@Li_Peng  @wongloong  @路飞  @kentxp  @j4love  

恭喜以上五位网友或获得《人人都是架构师:分布式系统架构落地与瓶颈突破》图书一本 

请私信 @博文视点   告知快递信息(格式:姓名+电话+地址)! 

wongloong
wongloong
哇塞,中了 谢谢
1
xpbob
xpbob

@gao_xianglong2017 其实有个概念我比较混淆,就是分布式和集群。感觉很相似的两个东西

myw31415926
myw31415926
回复 @gao_xianglong2017 : 比喻得真好,高,实在是高。
gao_xianglong2017
gao_xianglong2017
会炒菜吗?当你有1-2个朋友来你家吃饭时,你一个人应付得来,这个叫做单机;当有10-20个朋友来你家吃饭时,你得喊上一帮人一起帮你弄,这个叫做集群;当100-200个朋友来你家吃饭时,你会选择分而治之,几个几个买菜,几个几个洗菜,几个几个炒菜,几个几个上菜,这就是分布式+集群。
1
总有码农想害朕
总有码农想害朕

@gao_xianglong2017  喜欢上了公司的一个女孩,作为程序员,怎么采取有效的攻略去获得她的芳心,早日带回家。

gao_xianglong2017
gao_xianglong2017
既然对象已经有了,那么声明个变量引用过来即可。
0
_Leo_
_Leo_

@gao_xianglong2017 能大概分享几种IM分布式方案吗?

gao_xianglong2017
gao_xianglong2017
不是很熟悉IM领域,建议参考或者二次开发Openfire
0
Li_Peng
Li_Peng

@gao_xianglong2017 您好,我想请教两个技术问题:

1、普通的分布式场景中,除了使用常见的zookeeper,还没有其他类似的成熟方案,实现简单的分布式?

2、自己实现分布式数据存储时,对于数据的冗余、复制和分区容错,有没有成熟可用的方案或者理论作为指导?

sixliu
sixliu
回复 @gao_xianglong2017 : zk,mg完全不是一个层面上的东西,既然分布式就避不开cap,zk只是采用了paxos算法折中的方式实现一个分布式基础协调服务。
撸红薯
撸红薯
回复 @gao_xianglong2017 : zk之所以性能低在于着重点在最终一致性,而Mongo、OceanBase 好像都是没有这个的吧,那就不能作为分布式一致性的配置中心
金贞花
金贞花
使用zk是你最正确的选择
gao_xianglong2017
gao_xianglong2017
回复 @Li_Peng : shark支持库表水平(水平分库、水平分片),数据冗余后复杂多维度查询考虑走搜索,中间件暂时不支持这种特性。
Li_Peng
Li_Peng
回复 @gao_xianglong2017 : 请问您推荐的shark方案是否支持对数据库水平切分后,不同数据节点的数据分组汇总查询操作?如果不支持的话,有没有比较好的对水平分库后进行汇总查询的解决方案推荐呢?多谢!
下一页
0
netbuffer
netbuffer
@gao_xianglong2017 从单机应用过度到分布式应用,对于会话共享有什么靠谱的方案
m
mezongzi
回复 @gao_xianglong2017 : 建议放redis
m
mezongzi
回复 @gao_xianglong2017 : memCache有命中的情况
gao_xianglong2017
gao_xianglong2017
尝试放Redis、MemCache。。。
0
燃犀
燃犀

@gao_xianglong2017 我比较关注分布式数据库这块,在分库分表的情况下,分布式事务有什么好的解决方案吗?

 

Carvendy
Carvendy
回复 @燃犀 : 你可以看看这个文章。 http://www.tuicool.com/articles/e6byemN
燃犀
燃犀
回复 @Carvendy :关键是有业务场景需要数据强一致性,有没有性能不是太难看的解决方案或思路吗?
gao_xianglong2017
gao_xianglong2017
看业务场景,能够不使用分布式事务就尽量避免,建议考虑最终一致性方案。
Carvendy
Carvendy
分布式应用用事务会比较耗性能,可以考虑补偿机制。
0
weizaiC
weizaiC

@gao_xianglong2017对于分布式数据库,1.该如何解决分库分表的数据库事务;2.对于数据库的分表分库,现在实际运用场景中有哪些比较好的分库分表策略?

gao_xianglong2017
gao_xianglong2017
https://github.com/gaoxianglong/shark
gao_xianglong2017
gao_xianglong2017
shark支持2种分库分表模式,单库分表和多库多表,单库多表模式,简单来说就是应用在需要“垂直分库、水平分表”的场景下,而多库多表模式是应用在业务库和业务表都需要进行水平化的场景下,因此可以看做是对单库多表模式的一种升级,同时这也是互联网场景下,关系型数据库应对高并发、单表数据量过大的最终解决方案。
返回顶部
顶部