后端—服务架构-微服务
文章平均质量分 86
分布式服务架构、高可靠、高可用、高并发等
测试开发abbey
高级测试工程师,2年C语言开发,4年服务端测开,擅长服务端测试、音视频测试
展开
-
用Java实现ZooKeeper API的调用
package com.netease.qa.util;import java.util.List;import java.util.concurrent.CountDownLatch;import org.apache.zookeeper.CreateMode;import org.apache.zookeeper.KeeperException;import org.apache.zookeeper.WatchedEvent;import org.apache.zookeeper.Watc.原创 2022-03-23 16:38:44 · 247 阅读 · 0 评论 -
Dubbo—dubbo admin安装
dubbo admin介绍:Dubbo Admin 运维指南 | Apache Dubbo1.所需依赖介绍 Dubbo-admin是Dubbo RPC框架的“管理端”,可以对注册的服务(provider)和服务调用方(comsumer)进行服务治理,包括路由、监控、配置等功能; Dubbo一般都是使用zookeeper来进行管理服务注册,而dubbo-admin查看哪些注册了哪些服务,也是需要从zk上查询的,所以Dubbo-admin需要依赖于zookeeper; 另外,Dubbo-a原创 2022-03-03 15:32:51 · 2439 阅读 · 0 评论 -
分布式系统保障—混沌工程—初识
原文作者:朱小厮的博客原文地址:混沌工程(Chaos Engineering)初识 编辑推荐: 本文主要介绍什么是混沌工程、混沌工程的五大原则、混沌工程成熟度模型(CMM)以及混沌工程的目标——韧性架构,希望对您的学习有所帮助。 本文来自公众号:朱小厮的博客,由火龙果软件Alice编辑、推荐。 目录一、概述二、混沌工程的五大原则三、混沌成熟度模型(Chaos Maturity Model)四、混沌工程的目标——韧性架构五、混沌工程..原创 2021-02-18 11:58:59 · 954 阅读 · 0 评论 -
分布式服务常见问题—分布式事务
原文作者:程序员小灰原文地址:漫画:什么是分布式事务?有趣有内涵的文章第一时间送达!————— 第二天 —————假如没有分布式事务,在一系列微服务系统当中,假如不存在分布式事务,会发生什么呢?让我们以互联网中常用的交易业务为例子:上图中包含了库存和订单两个独立的微服务,每个微服务维护了自己的数据库。在交易系统的业务逻辑中,一个商品在下单之前需要...原创 2021-02-18 17:22:29 · 788 阅读 · 1 评论 -
分布式服务常见问题—访问量统计如何做?
原文作者:逖靖寒的世界原文地址:分布式实时统计系统--RAINBIRD最近Twitter开发了一款分布式实时统计系统Rainbird。Rainbird可以用于实时数据的统计:统计网站中每一个页面,域名的点击次数 内部系统的运行监控(统计被监控服务器的运行状态) 记录最大值和最小值性能要求作为大型网站的分布式应用,需要具备以下性能:极高的写入性能,可以达到100,000的WPS 非常高的读取性能,可以达到10,000s的RPS 高度的可扩展性,包括读取和存储等等,能够扩展到..原创 2021-02-17 23:25:13 · 2174 阅读 · 4 评论 -
高并发系统—高扩展
文章出自:阿里巴巴十亿级并发系统设计(2021版)链接:https://pan.baidu.com/s/1lbqQhDWjdZe1CBU-6U4jhA提取码:8888从架构设计上来说,高可扩展性是一个设计的指标,它表示可以通过增加机器的方式来线性提高系统的处理能力,从而承担更高的流量和并发。你可能会问:“在架构设计之初,为什么不预先考虑好使用多少台机器,支持现有的并发 呢?”这个问题我在“03 | 系统设计目标(一):如何提升系统性能?”一课中提到过, 答案是峰值的流量不可控。一般来说,...原创 2021-01-24 16:46:16 · 1440 阅读 · 3 评论 -
高并发系统—高可用
高可用:系统具备较高的无故障运行能力度量指标:平均故障间隔时间MTBF、平均故障恢复时间MTTR可用性:用几个9来描述高可用系统设计思路:系统设计、系统运维系统设计:故障转移、超时控制、降级、限流系统运维:灰度发布、故障演练故障转移:随机转移、心跳机制超时控制:组件之间调用最怕的就是延迟而非失败降级:暂停非核心业务限流:对并发请求进行限速灰度发布:故障演练:原创 2021-01-24 14:36:35 · 464 阅读 · 0 评论 -
高并发系统—高性能
高并发系统设计目标:高性能、高可用、高扩展性能优化原则:问题导向、性能瓶颈、数据支撑、明确目标度量指标:平均值(敏感度差)、最大值(太敏感)、分位值(最适合、最常用)性能优化:提高提供处理核心数、减少单词任务的响应时间原创 2021-01-24 14:11:29 · 1045 阅读 · 0 评论 -
高并发系统—架构分层
分层架构:将整体系统拆分成 N 个层次,每个层次有独立的职责,多个层次协同提供完整的功能应用: OSI 七层网络模型、Linux文件系统分层的好处:简化系统设计、提供复用、更容易做横向扩展分层系统的不足:提高编码复杂度、每个层次独立部署的话层次间通过网络交互降低性能原创 2021-01-24 13:44:31 · 474 阅读 · 0 评论 -
高并发系统—通用设计方法
应对高并发大流量时的方案:Scale-out(横向扩展)、缓存、异步Scale-out:通过将多个低性能的机器组成一个分布式集群来共同抵御高并发流量的冲击缓存:任何降低响应时间的中间存储都称为缓存,缓存的思想遍布很多设计领域,比如在操作系统中 CPU 有多级缓存,文件有 Page Cache 缓存异步:调用方不需要等待方法逻辑执行完成就可以返回执行其他的逻辑,在被调用方法执行完毕后再通过回调、事件通知等方式将结果反馈给调用方盲目地追从只能让我们的架构复杂不堪,最终难以维护高并发系统的演进应该是循序渐原创 2021-01-24 13:22:54 · 316 阅读 · 0 评论 -
负载均衡—算法/策略
负载均衡建立在现有网络结构之上,它提供了一种廉价有效透明的方法扩展网络设备和服务器的带宽、增加吞吐量、加强网络数据处理能力、提高网络的灵活性和可用性。一、四层负载均衡vs七层负载均衡四层负载均衡vs七层负载均衡1、四层负载均衡(目标地址和端口交换)主要通过报文中的目标地址和端口,再加上负载均衡设备设置的服务器选择方式,决定最终选择的内部服务器。以常见的TCP为例,负载均衡设备在接收到第一个来自客户端的SYN请求时,即通过上述方式选择一个最佳的服务器,并对报文中目标IP地...原创 2021-02-10 22:58:42 · 664 阅读 · 0 评论 -
API网关—Spring Cloud Zuul
原文作者:思想者原文地址:一起学习使用Spring Cloud Netflix之Zuul前言Zuul在Spring Cloud 体系中扮演着统一网关的角色,负责与外部交互。用户可以通过不同的URL特征来访问不同的后端服务,类似于Nginx代理的效果。Zuul与Eureka结合使用,可以根据服务名来访问后端的服务,对于Eureka而言,Zuul也是一个Eureka Client。系统的信息流入流出都需要经过Zuul,在Zuul中,我们可以统一监控流量,统一安全认证,统一报文组装等等。本文..原创 2021-01-29 14:53:55 · 91 阅读 · 0 评论 -
API网关—系统的门面要如何做呢?
文章出自:阿里巴巴十亿级并发系统设计(2021版)—第27节:API网关:系统的门面要如何做呢?链接:https://pan.baidu.com/s/1lbqQhDWjdZe1CBU-6U4jhA提取码:8888目录API网关起到的作用API网关要如何实现如何在你的系统中引入API网关呢?课程小结到目前为止,你的垂直电商系统在经过微服务化拆分之后,已经运行了一段时间了,系统的 扩展性得到了很大的提升,也能够比较平稳地度过高峰期的流量了。 不过最近你发现,随着自己的...原创 2021-01-29 08:51:11 · 306 阅读 · 0 评论 -
注册中心—组件—Consul
原文作者:DreamsonMa原文地址:Consul 快速入门 - Kong最佳实践目录Consul是什么安装Consul运行Agent注册服务Consul集群KV数据WEB UIConsul是什么Consul是一个服务网格解决方案(微服务间的 TCP/IP,负责服务之间的网络调用、限流、熔断和监控),它是一个分布式的、高度可用的系统,而且开发使用都很简便。它提供了一个功能齐全的控制平面,主要特点是:服务发现、健康检查、键值存储、安全服务通信、多数据中心。.原创 2021-02-01 15:15:06 · 158 阅读 · 0 评论 -
注册中心—组件—Eureka
原文作者:纯洁的微笑原文地址:springcloud(二):注册中心Eureka目录一、单点1、pom中添加依赖2、启动代码中添加@EnableEurekaServer注解3、配置文件二、集群1、双节点注册中心2、eureka集群使用Eureka是spring cloud中的一个负责服务注册与发现的组件。遵循着CAP理论中的A(可用性)P(分区容错性)。一个Eureka中分为eureka server和eureka client。其中eureka server是作.原创 2021-02-01 15:06:39 · 214 阅读 · 0 评论 -
注册中心—组件—ZooKeeper
目录一、ZooKeeper入门1、ZooKeeper特点2、ZooKeeper数据结构3、应用场景二、ZooKeeper安装1、本地模式安装2、配置参数解读三、Zookeeper内部原理1、选举机制(面试重点)2、节点类型3、Stat结构体4、监听器原理(面试重点)5、写数据流程四、ZooKeeper实战1、分布式安装部署2、客户端命令行操作3、API应用五、面试真题参考:https://www.bilibili.com/vi..原创 2020-12-20 21:12:13 · 143 阅读 · 0 评论 -
注册中心—常见注册中心组件对比分析
原文作者:知了V笑原文地址:微服务技术栈:常见注册中心组件,对比分析关于注册中心原理,请先阅读微服务注册中心原理目录一、Zookeeper组件二、Eureka组件三、Consul组件四、Nacos组件五、组件选择一、Zookeeper组件1、基础描述ZooKeeper是非常经典的服务注册中心中间件,在国内环境下,由于受到Dubbo框架的影响,大部分情况下认为Zookeeper是RPC服务框架下注册中心最好选择,随着Dubbo框架的不断开发优化,和各种注册中心组.原创 2021-02-01 14:22:24 · 1182 阅读 · 2 评论 -
注册中心—注册中心原理
在微服务架构中,注册中心是最核心的基础服务之一,本文将详细介绍下注册中心的组成部分和它们之前的关系。目录一、注册中心原理二、注册中心功能三、常见的注册中心一、注册中心原理注册中心主要涉及到三大角色:服务提供者、服务消费者、注册中心,它们之间的关系大致如下:各个微服务在启动时,将自己的网络地址等信息注册到注册中心,注册中心存储这些数据。 服务消费者从注册中心查询服务提供者的地址,并通过该地址调用服务提供者的接口。 各个微服务与注册中心使用一定机制(例如心跳)通信。如果注册中.原创 2021-02-01 14:10:09 · 7687 阅读 · 0 评论 -
一致性算法—Paxos算法原理与推导
原文作者:LBD原文地址:分布式系列文章——Paxos算法原理与推导目录Paxos是什么问题产生的背景一、相关概念二、问题描述三、推导过程1、最简单的方案——只有一个Acceptor2、多个Acceptor3、Proposer生成提案4、Acceptor接受提案5、Paxos算法描述四、Learner学习被选定的value五、如何保证Paxos算法的活性Paxos算法解决的问题是一个分布式系统如何就某个值(决议)达成一致。一个典型的场景是, ..原创 2021-02-12 15:40:06 · 663 阅读 · 0 评论 -
微服务架构是什么?
读完全文需要10min通常跟微服务相对的是单体应用(即将所有功能都打包成在一个独立单元的应用程序)。从单体应用到微服务并不是一蹴而就的,这是一个逐渐演变的过程。本文将以一个网上超市应用为例来说明这一过程。最初的需求随着业务发展。。。增加客户端类型和数据分析、商品促销等服务上述架构的弊端:重复造轮子:Web端和移动端有很多业务重复的代码。 数据共享问题:数据有时候通过数据库共享,有时候通过接口调用传输。接口调用关系杂乱。 后台性能问题:管理后台在一开始的设计中保障级别.原创 2020-07-05 23:55:21 · 189 阅读 · 0 评论