软件开发与架构领域 -体系化知识分享

理清软件领域各种似是而非的概念,深刻理解本质

分布式系统的魅力 -- 随处可见的“不一致性”-- 计算机世界也没有“永动机”

在分布式系统中,我想大家都听过很多的专业名词:强一致性,弱一致性,最终一致性,CAP理论,FLP不可能性,Paxos算法,2阶段提交。。 我们也听说过很多设计系统的策略:比如BASE,缓存,实时计算/离线计算、异步,重写轻读/重读轻写, 我们也听说过很多的系统衡量指标:性能、可靠性、高可用。。...

2016-12-30 15:22:47

阅读数:1371

评论数:1

分布式消息队列RocketMQ之Netty -- 1+N+M1+M2模型

我们知道Kafka的network层是直接基于Java NIO写的,在前面Kafka源码分析序列中已经有详细分析。 RocketMQ的network层是基于Netty写的,实现起来相对简单一些,毕竟Netty已经是很成熟的网络框架。 本篇就来分析一下,直接使用Java NIO写网络层,和基于Ne...

2016-12-28 21:34:53

阅读数:3076

评论数:0

分布式消息队列RocketMQ与Kafka的18项差异之“拨乱反正“之2

在前1篇,我讨论了RocketMQ与Kakfa的对比中,几个不太严谨的地方。本着严谨的精神,不偏袒任何一方,本篇想分析一下RocketMQ在Kafka的基础上,的确做的几个改进。有不对之处,敬请指正。 有兴趣朋友可以关注公众号“架构之道与术”, 获取最新文章。 或扫描如下二维码: t...

2016-12-28 20:53:32

阅读数:2858

评论数:4

分布式消息队列RocketMQ--事务消息--解决分布式事务的最佳实践

说到分布式事务,就会谈到那个经典的”账号转账”问题:2个账号,分布处于2个不同的DB,或者说2个不同的子系统里面,A要扣钱,B要加钱,如何保证原子性? 一般的思路都是通过消息中间件来实现“最终一致性”:A系统扣钱,然后发条消息给中间件,B系统接收此消息,进行加钱。 但这里面有个问题:A是先up...

2016-12-23 22:08:32

阅读数:40309

评论数:19

分布式消息队列RocketMQ与Kafka的18项差异之“拨乱反正”

我们知道,阿里的RocketMQ其实源自Kafka。同时网络上一直流传着1篇阿里中间件团队所写的RocketMQ与Kafka的18项差异的文章,并且被广泛转发。比如: http://blog.csdn.net/damacheng/article/details/42846549 https:/...

2016-12-23 14:45:43

阅读数:5387

评论数:4

Kafka源码深度解析-序列15 -Log文件结构与flush刷盘机制

Log文件结构 在前面我们反复讲topic, partition的概念,本文来分析这些不同topic、不同partition的message,在文件中,是以何种结构存储的。 有兴趣朋友可以关注公众号“架构之道与术”, 获取最新文章。 或扫描如下二维码: 每个topic_partitio...

2016-12-21 14:25:30

阅读数:2993

评论数:1

我眼中的架构师:一个优秀的架构师应该具备什么?

时光退回到七八年以前,那个时候“架构师“还是一个很“高大上“的title。可是在今天的互联网圈,随便一个工作了三、五年的开发人员,都可以称之为架构师。 随便多翻几个招聘网站,你可以看到:前端架构师、后端架构师、Android架构师、iOS架构师、php架构师、运维架构师、DB架构师、搜索架构师、...

2016-12-04 20:11:34

阅读数:9480

评论数:3

提示
确定要删除当前文章?
取消 删除
关闭
关闭