后端

万字长文告诉你,B 站是怎样崩的

一年之后,B 站终于把故障复盘写了出来。 我简单看了一下,和我当初猜测的原因部分吻合,猜对了由于某接口负载过大导致雪崩效应,但没有猜对导致负载过大的原因。 很显然,这篇文章是从纯技术角度解读本次故障的。 B 站有 UP 主做了这方面的视频,但受篇幅所限,讲的还不够细致,我尽力做了补充,但最终还是决定单独写一篇文章讲讲这件事。 如果大家对技术有一定了解,比如你听说过微服务、负载均衡、集群、多活,并且

Java同步锁-Synchronize和Lock对比

一、内置锁 使用Syschronized 关键字 同步代码块(同步方法)都是使用到对象的内置锁 1、对象内置锁 使用对象自身的内置锁(监视器锁-monitor lock) ** 实例方法-使用实例对象锁,static 方法 使用Class对象锁** ** 对象内置锁为互斥锁,一个同步块,只有一个线程进入** ** 同步代码块中的代码具有原子性** ** 进入代码块内获取到锁,

Python入门:Python3 PyMySQL 驱动操作数据库全面学习教程

Python入门:Python3 PyMySQL 驱动操作数据库全面学习教程 Python入门:Python3 PyMySQL 驱动操作数据库全面学习教程,本文是关于 Python3 使用 PyMySQL 驱动操作 MySQL 数据库的教程,首先介绍了 PyMySQL 的定义,它是 Python3 连接 MySQL 的库&

Flutter - 显示/隐藏控件的几种方法

1. if 判断 if(!_hidden) Container( color: Colors.deepOrangeAccent, child: TestWidget(msg: 'if 判断',), ) 实际效果,不会占位,隐藏时TestWidget不会加载,可else一个占位(则会加载占位的组件) 2. Opacity Container(

dex、vdex、.odex与.oat

转自: dex、vdex、.odex与.oat文件介绍 1、dex文件 在我们写Java代码的时候,生成的文件是.java文件。 对于PC上的java虚拟机(JVM)运行的是.class。 .java文件转成.class文件,需要jdk工具,转换命令: javac xxxx.java 关

排序算法

1、冒泡排序(最基础的排序)O(n^2)         //冒泡排序核心点 俩个for循环嵌套 第一个趟数 相当于length-1 第二个每趟比较的时间是递减的         //相邻的俩个相比 j和j+1相比         function bubble(arr) {             //遍历数组             for (var i = 1; i < arr.le

【SpringBoot】三大统一功能处理:拦截器、数据返回、异常捕获详解

目录1.前言插播一条消息~2.正文2.1拦截器2.1.1概念2.1.2拦截路径与执行流程2.1.3实际案例2.1.3.1创建登录拦截器2.1.3.2配置拦截规则(关键路径管理)2.1.3.3使用请求上下文存储用户信息2.2统一数据返回格式2.2.1为何需要统一格式2.2.2实现方案2.2.2.1基础封装类2.2.2.2升级方案-ResponseBodyAdvice2.2

第一集:MySQL下载超细教程(详细到每一小步)

MySQL下载教程(超详细) 一、官网下载 二、安装MySQL 三、检查安装好了没有 四、打开Mysql 五、配置环境变量(直接打开mysql) MySQL之旅的第二集 一、官网下载首先进入官网: MySQL官网 我们滑倒下面看到&#xf