HuXiMi Blog

念念不忘,必有回响。

如何设计一个高可用系统要考虑哪些地方

一篇短小的文章,面试经常遇到的这个问题。本文主要包括下面这些内容: 高可用的定义 哪些情况可能会导致系统不可用? 有哪些提高系统可用性的方法?只是简单的提一嘴,更具体内容在后续的文章中介绍,就拿限流来说,你需要搞懂:何为限流?如何限流?为什么要限流?如何做呢?说一下原理?。 什么是高可用?可用性的判断标准是啥? 高可用描述的是一个系统在大部分时间都是可用的,可以为我们提...

Limit Request

限流的算法有哪些? 简单介绍 4 种非常好理解并且容易实现的限流算法! 下图的图片不是 Guide 哥自己画的哦!图片来源于 InfoQ 的一篇文章《分布式服务限流实战,已经为你排好坑了》。 固定窗口计数器算法 该算法规定我们单位时间处理的请求数量。比如我们规定我们的一个接口一分钟只能访问10次的话。使用固定窗口计数器算法的话可以这样实现:给定一个变量counter来记录处理的请求数...

Mybatis Interview

本篇文章是JavaGuide收集自网络,原出处不明。 MyBatis 技术内幕系列博客,从原理和源码角度,介绍了其内部实现细节,无论是写的好与不好,我确实是用心写了,由于并不是介绍如何使用 MyBatis 的文章,所以,一些参数使用细节略掉了,我们的目标是介绍 MyBatis 的技术架构和重要组成部分,以及基本运行原理。 博客写的很辛苦,但是写出来却不一定好看,所谓开始很兴奋,过...

Zookeeper Plus

FrancisQ 投稿。 1. 好久不见 2. 什么是ZooKeeper 3. 一致性问题 4. 一致性协议和算法 4.1. 2PC(两阶段提交) 4.2. 3PC(三阶段提交) 4.3. Paxos 算法 4.3.1. prepare 阶段 4.3.2. ac...

Zookeeper Intro

1. 前言 2. ZooKeeper 介绍 2.1. ZooKeeper 由来 2.2. ZooKeeper 概览 2.3. ZooKeeper 特点 2.4. ZooKeeper 典型应用场景 2.5. 有哪些著名的开源项目用到了 ZooKeeper? 3. ZooKeeper 重要...

Zookeeper In Action

1. 前言 2. ZooKeeper 安装和使用 2.1. 使用Docker 安装 zookeeper 2.2. 连接 ZooKeeper 服务 2.3. 常用命令演示 2.3.1. 查看常用命令(help 命令) 2.3.2. 创建节点(create 命令) ...

服务之间的调用为啥不直接用http而用rpc

什么是 RPC?RPC原理是什么? 什么是 RPC? RPC(Remote Procedure Call)—远程过程调用,它是一种通过网络从远程计算机程序上请求服务,而不需要了解底层网络技术的协议。比如两个不同的服务 A、B 部署在两台不同的机器上,那么服务 A 如果想要调用服务 B 中的某个方法该怎么办呢?使用 HTTP请求 当然可以,但是可能会比较慢而且一些优化做的并不好。 RPC ...

Dubbo

这篇文章是我根据官方文档以及自己平时的使用情况,对 Dubbo 所做的一个总结。欢迎补充! RPC基础 何为 RPC? RPC(Remote Procedure Call) 即远程过程调用,通过名字我们就能看出 RPC 关注的是远程调用而非本地调用。 为什么要 RPC ? 因为,两个不同的服务器上的服务提供的方法不在一个内存空间,所以,需要通过网络编程才能传递方法调用所需要的参数。...

Message-Queue

消息队列

消息队列其实很简单 “RabbitMQ?”“Kafka?”“RocketMQ?”…在日常学习与开发过程中,我们常常听到消息队列这个关键词。我也在我的多篇文章中提到了这个概念。可能你是熟练使用消息队列的老手,又或者你是不懂消息队列的新手,不论你了不了解消息队列,本文都将带你搞懂消息队列的一些基本理论。如果你是老手,你可能从本文学到你之前不曾注意的一些关于消息队列的重要概念,如果你是新手,相信...

RocketMQ

消息队列总结

文章很长,点赞再看,养成好习惯😋😋😋 本文由 FrancisQ 老哥投稿! 消息队列扫盲 消息队列顾名思义就是存放消息的队列,队列我就不解释了,别告诉我你连队列都不知道是啥吧? 所以问题并不是消息队列是什么,而是 消息队列为什么会出现?消息队列能用来干什么?用它来干这些事会带来什么好处?消息队列会带来副作用吗? 消息队列为什么会出现? 消息队列算是作为后端程序员的一个...