摘要:
MySQL 体系架构 - 连接池组件 1、负责与客户端的通信,是半双工模式,这就意味着某一固定时刻只能由客户端向服务器请求或者服务器向客户端发送数据,而不能同时进行。 2、验证用户名和密码是否正确(数据库 MySQL 的 user 表中进行验证),如果错误返回错误通知 Access denied f 阅读全文
摘要:
1、芯片是怎么工作的呢?电能供给给芯片,芯片中的一种电子元件晶振(也就是石英晶体)通电后产生震荡,震荡会产生频率稳定的脉冲信号。通常这是一种高频的脉冲信号,每秒可达百万次。然后,我们通过谐振效应发放这个信号,形成方波。再通过电子元件调整这种脉冲的频率,把脉冲信号转换为我们需要的频率,这就形成了驱动芯 阅读全文
摘要:
简介 经常听到有人说磁盘很慢、网络很卡,这都是站在人类的感知维度去表述的,比如拷贝一个文件到硬盘需要几分钟到几十分钟,够我去吃个饭啦;而从网络下载一部电影,有时候需要几个小时,我都可以睡一觉了。 最为我们熟知的关于计算机不同组件速度差异的图表,是下面这种金字塔形式:越往上速度越快,容量越小,而价格越 阅读全文
摘要:
一 前言 传统的静态配置方式想要修改某个配置时,必须重新启动一次应用,如果是数据库连接串的变更,那可能还容易接受一些,但如果变更的是一些运行时实时感知的配置,如某个功能项的开关,重启应用就显得有点大动干戈了。配置中心正是为了解决此类问题应运而生的,特别是在微服务架构体系中,更倾向于使用配置中心来统一 阅读全文
摘要:
大半夜的睡不着,越发的想给 2021 年作个总结,一想更睡不着了,来唠叨下吧。 一拖再拖的婚礼。本来定在今年正月的婚礼,因为疫情,不敢办,村里也不让办;然后选在国庆吧,卧槽,封城了,我连老家都回不去,想想国庆待在宿舍的七天,简直头大,我恨疫情;然后定在了这个月 25 号了,希望不要再出啥幺蛾子了! 阅读全文
摘要:
前言 两条竖线分别是表示: 主动关闭(active close)的一方 被动关闭(passive close)的一方 网络上类似的图有很多,但是有的细节不够,有的存在误导。有的会把两条线分别标记成 client 和 server。给读者造成困惑。对于断开连接这件事,客户端和服务端都能作为主动方发起, 阅读全文
摘要:
概述 京东的商品评论目前已达到数十亿条,每天提供的服务调用也有数十亿次,而这些数据每年还在成倍增长,而数据存储是其中最重要的部分之一,接下来就介绍下京东评论系统的数据存储是如何设计的。 整体数据存储包括基础数据存储、文本存储、数据索引、数据缓存几个部分。 基础数据存储 基础数据存储使用 MySQL, 阅读全文
摘要:
一、代码效率优化方法论 1、数据结构,从名字上来看是数据的结构,也就是数据的组织方式。 2、复杂度是衡量代码运行效率的重要度量因素。 3、复杂度是一个关于输入数据量 n 的函数。假设你的代码复杂度是 f(n),那么就用个大写字母 O 和括号,把 f(n) 括起来就可以了,即 O(f(n))。 4、复 阅读全文
摘要:
原文链接:DMA 与零拷贝技术 注意事项:除了 Direct I/O,与磁盘相关的文件读写操作都有使用到 page cache 技术。 1. 数据的四次拷贝与四次上下文切换 很多应用程序在面临客户端请求时,可以等价为进行如下的系统调用: File.read(file, buf, len); Sock 阅读全文
摘要:
我们介绍一种基于数据库维护自增 ID 区间,结合内存分配的策略,这也是淘宝的 TDDL 等数据库中间件使用的主键生成策略。 使用这种方式首先在数据库中创建 sequence 表,其中的每一行,用于记录某个业务主键当前已经被占用的 ID 区间的最大值。sequence 表的主要字段是 name 和 v 阅读全文
摘要:
一、概述 guava⽬前有三种刷新本地缓存的机制: expireAfterAccess:当缓存项在指定的时间段内没有被读或写就会被回收。 expireAfterWrite:当缓存项在指定的时间段内没有更新就会被回收。-- 常用 refreshAfterWrite:当缓存项上一次更新操作之后的多久会被 阅读全文
摘要:
一、概述 1、程序员基础知识大致可以分为七种基本科学:计算机组成原理、操作系统、计算机网络、算法和数据结构、图形学、编译原理、编辑技巧。 2、ISP:Internet Service Provider,本地网络服务提供商。 通常,局域网网络从 ISP 接入,然后内部再通过路由器、交换机进行连接,构成 阅读全文
摘要:
1、分布式系统是用来解决集中式架构的性能瓶颈问题,其核心是可扩展性,其特点包括:不出现单点故障、无状态等。依照 CAP 理论,分布式系统只能在 CP 和 AP 之间做取舍。 2、Base 理论是在 CAP 理论上发展的,是 CAP 理论的实际应用,即在分区和副本存在的前提下,通过一定的系统设计方案, 阅读全文
摘要:
一、加锁发生了什么 //System.out.println都加了锁 public void println(String x) { synchronized (this) { print(x); newLine(); } } 简单加锁发生了什么? 要弄清楚加锁之后到底发生了什么需要看一下对象创建之 阅读全文
摘要:
一、TCP TCP(Transmission Control Protocol),传输控制协议,对“传输、发送、通信”进行“控制”的协议,它充分地实现了数据传输时的各种控制功能,可以进行丢包时的重发控制,还可以对次序乱掉的分包进行顺序控制。此外,TCP 是面向有连接的协议,只有在确认通信端存在时才会 阅读全文