首页
学习
活动
专区
工具
TVP
发布

无敌码农

专栏作者
115
文章
165968
阅读量
28
订阅数
分布式链路追踪,要怎么玩下?
大家好!我是"无敌码农",最近几个月因为各方面原因公众号没有及时更新,在这里给持续关注本公众号的朋友们表示歉意!2021年我将调整好心态持续给大家输出有价值的技术干货。在接下来的一段时间我所撰写的技术内容将偏向于“云原生”技术相关的内容,主要会涉及Devops、Kubernetes、Service Mesh等内容。而之所以偏向于写这些内容,一方面是自己的兴趣,另一方面也是最近几年以Kubernetes为基础设施的“云原生”技术体系已经成为主流,作为一名研发人员如果只专注于业务代码的研发,而对程序运行的基础环境、架构体系缺乏足够的认识和了解,也是不利于成长和进阶的!
用户5927304
2021-03-10
6640
亿级流量系统架构之如何保证百亿流量下的数据一致性(中)
上篇文章《亿级流量系统架构之如何保证百亿流量下的数据一致性(上 )》,初步给大家分析了一下,一个复杂的分布式系统中,数据不一致的问题是怎么产生的。
用户5927304
2019-07-31
5880
【分布式事务】基于RocketMQ搭建生产级消息集群?
目前很多互联网公司的系统都在朝着微服务化、分布式化系统的方向在演进,这带来了很多好处,也带来了一些棘手的问题,其中最棘手的莫过于数据一致性问题了。早期我们的软件功能都在一个进程中,数据的一致性可以通过数据库本地事务来加以控制。而在分布式架构下,原本比较完整的本地功能可能被拆分成了多个独立的服务进程。与之前相比,同样一笔业务订单此时可能会经历很多服务模块的处理,调用链路会变得很长,例如某电商平台,一笔购物订单可能会经过:商品中心、订单、支付、物流等多个服务的调用,而这可能还只是比较粗粒度的划分,某些比较大型的服务,如支付系统,可能本身又会按照分布式的架构拆分成多个微服务,所以整个业务的调用链路会变得更加冗长。 而这不可避免的就会产生数据不一致的问题,为了实现业务上的最终一致性,功能比较独立的系统,如订单系统与支付系统就会通过额外的业务逻辑设计来确保彼此之间的最终一致性,如订单系统会通过订单的支付状态来保持与支付系统的数据一致,而支付系统则会提供支付状态查询接口,或者实现最大可能的主动回调功能,来确保二者数据状态的最终一致。此外可能还会通过日终的订单对账来发现不一致的数据,并进行数据校正。 但是这些都只是业务逻辑上的手段,对于某些内部服务之间的调用,如果可以通过分布式事务解决方案来加以保证的话,其实是可以大大减少一些不必要的复杂业务逻辑的。实际上,目前市面上能够提供分布式事务解决方案、又比较成熟的开源技术框架比较少,而RocketMQ在4.3.0之后的版本提供了事务消息的功能,因为RocketMQ本身拥有比较多的生产实践的关系,所以这一功能备受关注,作者所在的公司也有一些实践。 以此为契机,为了给大家关于分布式事务一个比较清晰的认识,这里我打算以RocketMQ的事务消息功能为示例,来相对全面的总结下分布式事务的内容。本篇文章的主要内容,是先介绍如何搭建一套生产级的RocketMQ消息集群,以此准备下试验环境。在下一篇《【分布式事务】基于RocketMQ的分布式事务实现》会整体介绍下分布式事务的概念和原理,并做一些代码级的试验。
用户5927304
2019-07-31
6890
最终一致性分布式事务如何保障实际生产中99.99%高可用?
一、写在前面 二、可靠消息最终一致性方案的核心流程 二、可靠消息最终一致性方案的高可用保障生产实践
用户5927304
2019-07-31
1.1K0
分布式事务之深入理解什么是2PC、3PC及TCC协议?
在上一篇文章《【分布式事务】基于RocketMQ搭建生产级消息集群?》中给大家介绍了基于RocketMQ如何搭建生产级消息集群。因为本系列文章最终的目的是介绍基于RocketMQ的事物消息来解决分布式系统中的数据一致性问题,所以先给大家率先介绍了RocketMQ消息集群的搭建。
用户5927304
2019-07-31
2K0
漫画:什么是SnowFlake算法?
UUID是通用唯一识别码 (Universally Unique Identifier),在其他语言中也叫GUID,可以生成一个长度32位的全局唯一识别码。
用户5927304
2019-07-31
9220
分布式事务之如何基于RocketMQ的事务消息特性实现分布式系统的最终一致性?
1 导读 在之前的文章中我们介绍了如何基于RocketMQ搭建生产级消息集群,以及2PC、3PC和TCC等与分布式事务相关的基本概念(没有读过的读者详见?推荐阅读)。在这篇文章中我们将介绍Rocke
用户5927304
2019-07-31
1.1K0
亿级流量系统架构之如何保证百亿流量下的数据一致性(上)
这篇文章,咱们继续来聊聊之前的亿级流量架构的演进,之前对这个系列的文章已经更新到了可扩展架构的设计,如果有不太清楚的同学,建议一定先回看一下之前的文章:
用户5927304
2019-07-31
7150
分布式锁全网最详解!!
在单进程的系统中,当存在多个线程可以同时改变某个变量(可变共享变量)时,就需要对变量或代码块做同步,使其在修改这种变量时能够线性执行消除并发修改变量。
用户5927304
2019-07-31
4670
图解:什么是Raft算法?
在之前的文章《基于SpringCloud的微服务架构演变史?》中我们介绍了分布式注册中心Consul集群中使用了Raft这种分布式一致性算法,那么在这一篇的内容中就给大家详细介绍下什么是Raft算法。
用户5927304
2019-07-31
1.8K0
什么是分布式架构?
在大数据系统中,分布式系统已经成为一个无法避免的组件,如zookeeper已经成为了工业届的标准。所以对于大数据的研究,也必须要研究分布式系统的特点。
用户5927304
2019-07-31
5.5K0
从RocketMQ我们学到了什么?(NameServer篇)
在很久很久以前,人们之间的通信方式就是面对面交谈,你说一句,我听一句,虽然简单可靠,但是弊端也很大。
用户5927304
2019-07-30
7410
没有更多了
社区活动
腾讯技术创作狂欢月
“码”上创作 21 天,分 10000 元奖品池!
Python精品学习库
代码在线跑,知识轻松学
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
技术创作特训营·精选知识专栏
往期视频·千货材料·成员作品 最新动态
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档