上一页 1 ··· 6 7 8 9 10 11 12 13 14 ··· 22 下一页
摘要: 接口隔离原则(ISP) , 接口隔离原则 接口隔离原则的定义 将接口拆分成更小更具体的接口,让接口中只包含用户感兴趣的方法。 接口隔离和单一职责都是为了高类聚、低耦合,体现了封装思想。两者区别: 1. 单一职责注重的是职责,接口隔离注重对接口依赖的隔离 2. 单一职责主要约束类,针对的是程序中的实现 阅读全文
posted @ 2022-05-04 22:54 灯塔下的守望者 阅读(12) 评论(0) 推荐(0) 编辑
摘要: 单一职责原则(SRP) , 单一职责原则 单一职责原则的定义 单一职责又称单一功能,职责指的是变化的原因,单一职责规定 一个类有且仅有一个引起他变化的原因 ,否则应该被拆分。 对象不应该承担太多职责,如果一个对象承担太多职责,至少有两个缺点: 1. 一个职责的变化可能削弱或者抑制其他的职责的能力。 阅读全文
posted @ 2022-05-04 22:53 灯塔下的守望者 阅读(5) 评论(0) 推荐(0) 编辑
摘要: 本文介绍了一个良好的可扩展性的架构需要遵守的原则。 <! more 架构设计基本原则 2022/04/16 校对完成 文章更新历史 2022/04/16 初稿。 开闭原则(OCP) , 开闭原则 开闭原则的定义 开闭原则:软件实体应该对扩展开放,对修改关闭 软件实体包含几个部分 1. 项目中划分出来 阅读全文
posted @ 2022-05-04 22:52 灯塔下的守望者 阅读(2) 评论(0) 推荐(0) 编辑
摘要: 服务链路追踪 什么是服务链路追踪 分布式微服务架构上是通过业务来划分服务的,通过Rest调用对外暴露一个接口,可能需要很多服务协同才能完成这个接口的功能。 如果链路上任何一个服务出现问题或者出现网络超时,都会导致接口调用失败。随着业务的扩张,接口调用会越来越复杂。 极端情况: 分布式链路追踪(Dis 阅读全文
posted @ 2022-05-04 22:51 灯塔下的守望者 阅读(82) 评论(0) 推荐(0) 编辑
摘要: 服务限流 什么是服务限流 限流就是为了提供稳定的服务,限制使用人数。 限流的目的是通过对并发请求进行限速,或者对一个时间窗口内的请求数量进行限速来保护系统。 一旦达到限制速率可以拒绝服务、排队或者等待。 多维度进行限流 请求到达服务接口时,可以采用多维度限流策略。 限流算法 1. 限流算法 计数器( 阅读全文
posted @ 2022-05-04 22:49 灯塔下的守望者 阅读(42) 评论(0) 推荐(0) 编辑
摘要: 服务熔断 什么是服务熔断 牺牲局部,保存整体的措施叫做熔断。 不采取熔断的后果,例子: 一旦下游服务C变的不可用,积压了大量请求,服务B的请求也会随之阻塞。 线程资源逐渐耗尽,使得服务B也变的不可用。紧接着,服务A也会变得不可用,整个服务链路被拖垮。 这种调用链路的连锁故障,叫做雪崩。 熔断机制 可 阅读全文
posted @ 2022-05-04 22:49 灯塔下的守望者 阅读(118) 评论(0) 推荐(0) 编辑
摘要: 服务降级 什么是服务降级 在服务器压力剧增的情况下,对一些服务和页面进行有策略的不处理或者换种简单的方式处理,从而释放服务器资源以保证核心服务正常运作或者高效运作。 当架构整体的负载超过了预设的上线阈值,或者即将到来的流量预计将会超过预设的阈值时,为了保证重要的基本服务能够正常运行,可以将一些不重要 阅读全文
posted @ 2022-05-04 22:48 灯塔下的守望者 阅读(27) 评论(0) 推荐(0) 编辑
摘要: 服务削峰 为什么要进行服务削峰 为了应对瞬间高并发的流量。 流量削峰的方案 1. 消息队列解决削峰 用消息队列缓存瞬时流量,把同步的直接调用转换为异步的间接推送,中间通过队列在一端承接瞬时流量洪峰,在另一端将消息平滑的推送出去。 消息队列中间件主要解决应用耦合,异步消息,流量削峰等问题。 常见的队列 阅读全文
posted @ 2022-05-04 22:47 灯塔下的守望者 阅读(38) 评论(0) 推荐(0) 编辑
摘要: 分布式服务治理 服务协调 分布式协调主要用来解决分布式环境中多个进程之间的同步,让他们有序的去访问临界资源,防止造成脏数据的后果。 分布式锁是分布式协调技术的核心内容。 分布式锁的实现方式 1. 基于缓存(redis)实现分布式锁 获取锁的时候,使用 加锁,并使用 命令为锁添加一个超时时间,超过该时 阅读全文
posted @ 2022-05-04 22:46 灯塔下的守望者 阅读(21) 评论(0) 推荐(0) 编辑
摘要: 分布式架构服务调用 服务调用 和传统单体架构相比,分布式多了一个远程服务之间的通信,不管soa还是微服务,本质都是对业务服务的提炼和复用。 远程服务之间的调用,才是实现分布式的关键因素。 实现方式 HTTP通信协议的框架 1. HttpURLConnection "https://docs.orac 阅读全文
posted @ 2022-05-04 22:45 灯塔下的守望者 阅读(25) 评论(0) 推荐(0) 编辑
摘要: 负载均衡 使用多台服务器共同分担计算任务,将网络请求与计算分配到集群可用的不同服务器节点上,从而达到高可用性以及良好的操作体验。 Client1、Client2、Client3通过负载均衡分配到不同的节点上。 负载均衡有硬件解决方案,也有软件解决方案。硬件解决方案有著名的F5,软件有LVS、HAPr 阅读全文
posted @ 2022-05-04 22:44 灯塔下的守望者 阅读(28) 评论(0) 推荐(0) 编辑
摘要: 容错性 容错就是IT系统对错误的包容能力。 容错处理保障了分布式系统环境下相应系统高可用和健壮性。 常见的案例是对于 问题的解决方案。 解决办法 1. 临时存放null值 2. 使用布隆过滤器 "https://baike.baidu.com/item/%E5%B8%83%E9%9A%86%E8%B 阅读全文
posted @ 2022-05-04 22:43 灯塔下的守望者 阅读(37) 评论(0) 推荐(0) 编辑
摘要: 高可用 高可用HA设计 高可用(Hign Availability)是系统架构中必须考虑的因素之一,指的是,经过设计来减少系统不能提供服务的时间。 系统高可用性的设计模式通常有三种:主备(master slave)、互备(active active)和集群(cluster)。 1. 主备模式 主备模 阅读全文
posted @ 2022-05-04 22:42 灯塔下的守望者 阅读(98) 评论(0) 推荐(0) 编辑
摘要: 本文阐述了分布式系统中常见的设计策略。 <! more 分布式系统设计策略 2022/03/01 校对完成 文章更新历史 2022/03/01 初稿。 分布式系统中需要解决的问题 1. 如何检测当前节点是否存活? 2. 如何保障高可用 3. 容错处理 4. 负载均衡 心跳检测 检测节点故障的通用手段 阅读全文
posted @ 2022-05-04 22:41 灯塔下的守望者 阅读(87) 评论(0) 推荐(0) 编辑
摘要: Lease机制 什么是Lease机制 Lease机制,就是租约机制,是一种在分布式协议中常用的协议,是维护分布式系统中数据一致性的常用工具。 Lease机制的特点: Lease是颁发者对一段时间内数据一致性的承诺 颁发者发出Lease后,不管是否被接受,只要Lease不过期,颁发者都会按照协议,遵守 阅读全文
posted @ 2022-05-04 22:40 灯塔下的守望者 阅读(63) 评论(0) 推荐(0) 编辑
上一页 1 ··· 6 7 8 9 10 11 12 13 14 ··· 22 下一页