
分布式服务
文章平均质量分 93
zero__007
这个作者很懒,什么都没留下…
展开
-
分布式一致性算法(一)Paxos算法
转载自:https://blog.csdn.net/truelove12358/article/details/104671514分布式一致性到共识机制(一)Paxos算法从分布式系统的CAP理论出发,关注分布式一致性,以及区块链的共识问题及解决。区块链首先是一个大规模分布式系统,共识问题本质就是分布式系统的一致性问题,但是又有很大的不同。工程开发中,认为系统中存在故障(fault),但不存在恶意(corrupt)节点,而区块链,特别是公开链是落地到物理世界中,涉及到人性和利益关系,不可避免的存在信转载 2021-04-22 10:07:59 · 244 阅读 · 0 评论 -
分布式锁使用不当引发生产事故
来源:http://suo.im/5CTeWB前言基于Redis使用分布式锁在当今已经不是什么新鲜事了。本篇文章主要是基于我们实际项目中因为redis分布式锁造成的事故分析及解决方案。背景我们项目中的抢购订单采用的是分布式锁来解决的。有一次,运营做了一个飞天茅台的抢购活动,库存100瓶,但是却超卖了!要知道,这个地球上飞天茅台的稀缺性啊!!!事故定为P0级重大事故…只能坦然接受。整个项目组被扣绩效了。。。事故发生后,CTO指名点姓让我带头冲锋来处理,好吧,冲~事故现场经过一番了解后,得知这个抢转载 2021-04-22 09:52:34 · 209 阅读 · 0 评论 -
如何用消息系统避免分布式事务
转载自:http://blog.csdn.net/u013970991/article/details/52036250 举个例子,从支付宝转账1万块钱到余额宝,这是日常生活的一件普通小事,如果支付宝扣除1万之后,系统挂掉怎么办,这时余额宝账户并没有增加1万,数据就会出现不一致状况了。 上述场景在各个类型的系统中都能找到相似影子,比如在电商系统中,当有用户下单后转载 2017-04-24 20:11:59 · 390 阅读 · 0 评论 -
云原生
转载自:https://blog.csdn.net/csdnnews/article/details/90093190 https://www.cnblogs.com/IT-Evan/p/CloudNative.html文章目录前言后端架构演化史集中式架构分布式系统架构容器技术新纪元 Docker微服务架构KubernetesService Mesh总结云原生 Cloud Native什么是云 Cloud什么是原生 NativeCloud Native 是道,Service Mesh 是术Serv转载 2020-06-15 19:29:09 · 476 阅读 · 0 评论 -
Raft算法
转载自:https://www.jianshu.com/p/8e4bbe7e276c 首先介绍下分布式共识算法。分布式共识算法是指:多个参与者 针对 某一件事 达成完全 一致 :一件事,一个结论;已达成一致的结论,不可推翻。 目前分布式共识算法有如下: Paxos:被认为是分布式共识算法的根本,其他都是其变种,但是 Paxos 论文中只给出了单个提案的过程,并没有给出复制状态机中...转载 2019-04-16 22:09:50 · 292 阅读 · 0 评论 -
如何选择分布式事务
转载自:https://blog.csdn.net/xiaolang85/article/details/85759536分布式事务有多种主流形态,包括:基于消息实现的分布式事务基于补偿实现的分布式事务基于TCC实现的分布式事务基于SAGA实现的分布式事务基于2PC实现的分布式事务…何时选择单机事务? 在条件允许的情况下,应该尽可能地使用单机事务,因为单机事务里,无需额外协...转载 2019-07-08 19:44:33 · 273 阅读 · 0 评论 -
TCC服务设计和实现注意事项
转载自:https://blog.csdn.net/bntX2jSQfEHy7/article/details/81058746 一、TCC简介 TCC是一种比较成熟的分布式事务解决方案,可用于解决跨库操作的数据一致性问题;TCC是服务化的两阶段编程模型,其Try、Confirm、Cancel 3个方法均由业务编码实现; 其中Try操作作为一阶段,负责资源的检查和预留,Confirm...转载 2019-06-17 20:59:14 · 1439 阅读 · 0 评论 -
微服务架构的演进:Service Mesh与Istio
转载自:https://blog.csdn.net/M2l0ZgSsVc7r69eFdTj/article/details/79824750 作为一种架构模式,微服务将复杂系统切分为数十乃至上百个小服务,每个服务负责实现一个独立的业务逻辑。这些小服务易于被小型的软件工程师团队所理解和修改,并带来了语言和框架选择灵活性,缩短应用开发上线时间,可根据不同的工作负载和资源要求对服务进行独立缩扩...转载 2019-06-10 21:23:07 · 3558 阅读 · 0 评论 -
微服务架构
转载自:https://blog.csdn.net/bntX2jSQfEHy7/article/details/79081314 什么是微服务架构,得先知道什么系统架构设计? 系统架构设计描述了在应用系统的内部,如何根据业务、技术、组织、灵活性、可扩展性以及可维护性等多种因素,将应用系统划分成不同的部分,并使这些部分彼此之间相互分工、相互协作,从而为用户提供某种特定的价值的方式。单...转载 2019-06-10 21:21:36 · 204 阅读 · 0 评论 -
如何设计RPC框架
RPC框架的核心目标是解决分布式系统中服务之间的调用问题。RPC框架三个核心角色 1. 服务提供者(Server)对外提供后台服务,将自己的服务信息,注册到注册中心 2. 注册中心(Registry)用于服务端注册远程服务以及客户端发现服务。 3. 服务消费者(Client) 从注册中心获取远程服务的注册信息,然后进行远程过程调用。 RPC远程调用过程 1. 服务调...原创 2019-06-13 20:58:39 · 2102 阅读 · 0 评论 -
分布式事务
转载自:http://ifeve.com/distribute-transaction-2pc/ http://coolshell.cn/articles/10910.html http://www.jianshu.com/p/1156151e20c8 在单个数据库实例时候,可以在一个数据源的事务(本地事务)内做多步数据库操作,在事务内的多个操作要么全部执行生效,要么全部...转载 2018-09-09 22:35:46 · 205 阅读 · 0 评论 -
服务降级和服务熔断
转载自:https://blog.csdn.net/llianlianpay/article/details/79768890 服务熔断 在微服务架构中,微服务之间的数据交互通过远程调用完成,微服务A调用微服务B和微服务C,微服务B和微服务C又调用其它的微服务,此时如果链路上某个微服务的调用响应时间过长或者不可用,那么对微服务A的调用就会占用越来越多的系统资源,进而引起系统崩溃,导致“雪崩...原创 2019-06-01 19:22:27 · 17312 阅读 · 3 评论 -
高并发系统限流
转载自:https://blog.csdn.net/xiaomin1991222/article/details/84827800 在高并发系统时有三把利器用来保护系统:缓存、降级和限流。 缓存的目的是提升系统访问速度和增大系统能处理的容量,可谓是抗高并发流量的银弹;而降级是当服务出问题或者影响到核心流程的性能则需要暂时屏蔽掉,待高峰或者问题解决后再打开;而有些场景并不能用缓存和降级来解决...转载 2019-02-18 19:54:15 · 441 阅读 · 0 评论 -
关于分布式系统的数据一致性问题
转载自:https://blog.csdn.net/liutao363071094/article/details/53169444 https://blog.csdn.net/liutao363071094/article/details/53169464 拿经常使用的功能来举例,最近网购比较热门,就以京东为例的,来看看京东的一个简单的购物流程: 用户在京东上下了一个订单,发现自...转载 2019-02-18 19:45:16 · 293 阅读 · 0 评论 -
分布式系统中的Tracer
转载自:http://www.cnblogs.com/zhengyun_ustc/p/55solution2.html https://blog.csdn.net/u014229282/article/details/81097188 http://www.aboutyun.com/thread-20646-1-1.html Tracer 是一个用于分布式系统调用跟踪的组件,...转载 2018-09-04 23:49:10 · 4091 阅读 · 0 评论 -
JAVA集群分布式和网络设计的浅析(转载!)
转载自:http://blog.csdn.net/xieyuooo/article/details/6371207 在java中常用于实现多线程的方法有3中: 1、继承于Thread类,重写run方法 2、实现Runable接口,实现run方法 3、实现Callable接口,实现call方法(具有返回值) 至于调用的方法多种多样,可以直...转载 2015-06-11 15:34:22 · 1299 阅读 · 0 评论 -
服务容错模式
转载自:http://tech.meituan.com/service-fault-tolerant-pattern.html 所谓模式,其实就是某种场景下一类问题及其解决方案的总结归纳,往往可以重用。模式可以指导我们完成任务,作出合理的系统设计方案,达到事半功倍的效果。而在服务容错这个方向,行业内已经有了不少实践总结出来的解决方案。超时与重试(Timeout and Retry) 超时模式,是转载 2017-03-09 20:01:17 · 1277 阅读 · 0 评论 -
聊聊微服务的服务注册与发现
转载自:http://jm.taobao.org/2018/06/26/%E8%81%8A%E8%81%8A%E5%BE%AE%E6%9C%8D%E5%8A%A1%E7%9A%84%E6%9C%8D%E5%8A%A1%E6%B3%A8%E5%86%8C%E4%B8%8E%E5%8F%91%E7%8E%B0/引言聊起微服务的服务注册与发现,很多人立马就会脱口而出 zk、etcd、cons...转载 2018-09-15 13:27:05 · 492 阅读 · 0 评论 -
分布式系统中的幂等性
转载自:https://blog.csdn.net/qq2531246791/article/details/81984381 https://www.cnblogs.com/leechenxiang/p/6626629.html一、 背景 实际系统中有很多操作,不管做多少次,都应该产生一样的效果或返回一样的结果。比如完成一个订单流程时经常遇到下面的场景: 1. 一个订单创建接口...转载 2019-02-11 16:42:56 · 1267 阅读 · 0 评论 -
分布式锁
目前主流的有三种基于数据库实现基于Redis实现基于ZooKeeper实现 基于数据库实现: 基于数据库来做分布式锁的话,通常有两种做法:基于数据库的乐观锁基于数据库的悲观锁 乐观锁机制其实就是在数据库表中引入一个版本号(version)字段来实现的。 当要从数据库中读取数据的时候,同时把这个version字段也读出来,如果要对读出来的数据进行更新后写回数据库,...原创 2019-06-12 19:43:58 · 104 阅读 · 0 评论