![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
分布式
文章平均质量分 92
分布式读书笔记
zhendeWD
这个作者很懒,什么都没留下…
展开
-
spring cloud笔记--微服务基础
微服务主旨是将一个原本独立的系统拆分成多个小型服务,这些小型服务都在各自独立的进程中运行,服务之间通过基于HTTP的RESTful API进行通信协作,被拆分成的每个小型服务都围绕着系统中的某一项或一些耦合度较高的业务功能进行构建,并每个服务都维护着自身的数据存储,业务开发,自动化测试案例及独立部署机制。单体系统初期可以非常方便的开发和使用,但随着系统的发展,维护成本会变得越来越大,且难以控制。多环境配置:通过配置多份不同环境的配置文件,再通过打包命令指定需要打包的内容之后进行区分打包。原创 2023-10-15 21:07:59 · 406 阅读 · 1 评论 -
spring Cloud笔记--服务治理Eureka
eureka客户端在向服务注册中心发送注册请求时,用来描述自身服务信息的对象,其中包含一些标准化的元数据,比如服务名称,实例名称,实例端口等用于服务治理的重要信息,以及负载均衡策略或是其他特殊用途的自定义元数据信息。注册完服务之后,服务提供者会维护一个心跳用来持续告诉Eureka server还活着,以防剔除任务将该服务实例从服务列表中排除出去,称为服务续约。使用Netflix eureka实现服务注册与发现,包含服务端组件,客户端组件,主要适用于通过java实现的分布式系统。原创 2023-10-15 21:04:28 · 745 阅读 · 0 评论 -
分布式锁实现方法
流程:开始事务–>获取锁–>判断父节点是否存在–>不存在创建父节点–>创建临时有序节点–>获取锁判断自身是否为序号最小节点—>是最小节点,获取锁成功,—>不是最小节点,监控比本节点序号-1的节点,阻塞等待节点删除通知 -->收到前置节点删除通知–>回到获取锁判断是不是为序号最小的节点。结果:会在根节点下为每一个等待获取锁的线程创建一个对应的临时有序节点,序号最小的节点会持有锁,并且后一个节点只监听其前面的一个节点,从而可以让获取锁的过程有序且高效。让获取锁的线程产生排队,后一个监听前一个,依次排序。原创 2023-09-21 20:34:12 · 259 阅读 · 0 评论 -
缓存和分布式锁笔记
redis获取锁:setnxex(“lock”,uuid,10s) -->获取到锁->执行业务->如果当前锁的值是之前的uuid的锁–>删除锁->结束,未获取到锁的等待重试。某个线程已经获得某个锁,可以再次获取锁而不会出现死锁,再次获取锁的时候会判断当前线程是否是已经加锁的线程,如果是对锁的次数+1,释放锁的时候加了几次锁,就需要释放几次锁。redis获取锁:setnxex(“lock”,1111,10s) -->获取到锁->执行业务->删除锁->结束,未获取到锁的等待重试。更难的事情,锁的自动续期。原创 2023-09-02 14:14:34 · 509 阅读 · 0 评论 -
zookeeper总结
服务器 3 启动,给自己投票,同时与之前启动的服务器 1,2 交换信息,由于服务器 3 的编号最大所以服务器 3 胜出,此时投票数正好大于半数,所以服务器 3 成为领导者,服务器1,2 成为小弟。服务器 4 启动,给自己投票,同时与之前启动的服务器 1,2,3 交换信息,尽管服务器 4 的编号大,但之前服务器 3 已经胜出,所以服务器 4 只能成为小弟。服务器 1 启动,给自己投票,发投票信息,由于其它机器还没有启动所以它收不到反馈信息,服务器 1 的状态一直属于 Looking。原创 2023-08-06 23:21:42 · 1119 阅读 · 1 评论 -
分布式-分布式高可用笔记
高可用的保障方式双十一限制退款从业务角度考虑,由于活动期间流量巨大,订单产生数量过大,需要节省平台和商家的人力资源,节省库存盘点等工作;退款处理并不是核心流程,在双十一当天,商家也没有这么多的资源来处理退款请求,在服务治理中,这是典型的业务降级,保护系统,对非核心业务做降级处理。电商大促的高可用保障服务可用性是对服务等级协议 SLA 的描述。假设一个核心链路依赖 10 个服务,这 10 个服务的可用性是 99.99%,那这个核心链路的可用性是 99.99% 的 10 次方,也就是 99.9%原创 2023-03-03 23:29:45 · 308 阅读 · 0 评论 -
分布式-分布式缓存笔记
分布式缓存笔记原创 2023-02-26 22:59:54 · 331 阅读 · 0 评论 -
分布式-分布式消息笔记
分布式消息笔记原创 2023-02-26 20:10:31 · 782 阅读 · 0 评论 -
分布式-分布式存储笔记
分布式存储原创 2023-02-19 22:53:42 · 1009 阅读 · 1 评论 -
分布式-分布式服务
分布式服务原创 2023-02-15 23:36:43 · 565 阅读 · 0 评论 -
分布式-分布式事务和分布式锁
分布式事务和分布式锁原创 2023-02-13 00:10:28 · 884 阅读 · 0 评论 -
分布式-分布式理论笔记
分布式-分布式理论原创 2023-02-11 23:50:17 · 907 阅读 · 0 评论 -
分布式服务架构读书笔记-第六章 Java服务的线上应急和技术攻关
6.1海恩法则和墨菲定律海恩法则:每一起严重事故背后,必然有29次轻微事故和300起未遂先兆及1000起事故隐患事故的发生是量的积累的结果再好的技术,再完美的规章,在实际操作层面也无法取代人自身的素质和责任心墨菲定律:如果有两种或两种以上方式去做某件事情,而选择其中一种方式将导致灾难,则必定有人会做出这种选择。任何事情都没有表面看起来那么简单所有事情的发展都会比你预计的时间长会出错的事总会出错如果你担心某种情况发生,那么它更有可能发生对问题要彻查,不能因为问题的现象不明显而忽略。原创 2022-02-27 22:21:26 · 947 阅读 · 0 评论 -
分布式服务架构-第五章 基于调用链的服务治理系统的设计与实现
1.APM系统简介1.1优秀的开源APM系统开源的APM系统的实现Pinpoint:在互联网公司得到广泛应用Zipkin:是Twitter的一个开源项目,原本用于收集Twitter各个服务上的监控数据,并提供查询接口CAT:一款国产开源的APM系统1.1.1 Pinpoint基于Java语言的APM工具,用于大规模分布式服务化系统或实施了微服务架构的系统。特性安装的采集端代理组件对原有的服务代码无侵入对性能的影响较小,只增加约3%的资源利用率根据请求的流量自动生成微服务调用的拓扑原创 2022-02-20 13:58:49 · 1126 阅读 · 0 评论 -
分布式服务架构-第四章 大数据日志系统的构建
1.开源日志框架的原理分析与应用实践1.1 JDK Logger不需要集成任何类库,只要有jvm运行环境,直接使用。级别:all、finest、finer、fine、config、info、warning、servere、offpublic static Logger logger = Logger.getLogger(JDKLoggerDemo.class.toString());1.2 Apache Commons LoggingJCL提供了操作日志的接口,而具体的日志实现交给Log4j这原创 2022-02-14 00:54:01 · 1968 阅读 · 0 评论 -
分布式服务架构-第二章 彻底解决分布式系统一致性的问题
1. 什么是一致性拆分:水平拆分:由于单一节点无法满足性能需求,需要扩展为多个节点,多个节点具有一致性的功能,组成一个服务池,一个节点服务一部分请求量,所有节点共同处理大规模高并发的请求量。垂直拆分:按照功能进行拆分,复杂的功能拆分为多个单一简单的功能,不同的单一功能组合在一起,和未拆分前完成的功能是一样的。一致性指:分布式服务化系统之间的弱一致性,包括应用系统的一致性和数据的一致性。2. 一致性问题案例1:下订单和扣库存案例2:同步调用超时案例3:异步回调超时案例4:掉单案例5:原创 2021-12-25 23:38:51 · 1073 阅读 · 0 评论 -
分布式服务架构-第一章 分布式微服务架构设计原理
第一章 分布式微服务架构设计原理传统企业级技术无法满足互联网产品服务于海量用户的需求;互联网技术以拆分为原则来满足服务于海量用户的需求满足用户对高可用性,高性能,可伸缩,可扩展和安全性的非功能质量的要求1.从传统单体架构到服务化架构1.1 JEE架构Java平台企业版简称JEE架构:web容器 —综合业务逻辑 --> EJB容器 — 数据存取ORM --> 数据库Web层:负责与用户交互或者对外提供接口业务逻辑层:为了实现业务逻辑而设计的流程处理和计算处理模块数据存取原创 2021-11-23 23:21:15 · 1403 阅读 · 0 评论