摘要: 缓存穿透 对一个不存在的数据进行请求,该请求会直接穿透缓存,到数据库查询,数据库中也没有。当并发查不存在的数据时,大量请求到达数据库,给数据库造成很大压力。 解决方案: 过滤请求: 接口层增加校验 如id校验 若id<=0 直接拦截 布隆过滤器 布隆过滤器可以判断某个数据不存在 或 可能存在 方法: 阅读全文
posted @ 2021-09-12 16:38 lancelee98 阅读(110) 评论(0) 推荐(0) 编辑
摘要: ZooKepper: 一个用于分布式应用的分布式协调系统 CAP理论: 一个计算机不能同时满足以下三点: Consistency 一致性:多个副本之间的一致性 Availability可用性:每次都能获取正确的响应,但不能保证获取的是最新的数据 Partition Tolerance分区容错性:遇到 阅读全文
posted @ 2021-09-12 16:37 lancelee98 阅读(63) 评论(0) 推荐(0) 编辑
摘要: JMH 基础 Java Microbenchmark Harness 用于代码微基准测试的工具套件,主要是基于方法层面的基准测试,精度可以达到纳秒级 可以规避JVM中的JIT 或者其他优化对性能测试造成的影响.JIT(just in time comlilation) 某段代码第一次执行时进行编译, 阅读全文
posted @ 2021-09-12 16:25 lancelee98 阅读(53) 评论(0) 推荐(0) 编辑
摘要: https://zhuanlan.zhihu.com/p/149821222 RPC (Remote Procedure Call) 远程过程调用 将服务调用封装在一个本地方法中,让调用者像使用本地方法一样调用服务 调用方和服务方 约定,基于TCP长连接进行数据交互达成 由于方法不在本地执行,因此有 阅读全文
posted @ 2021-09-12 16:24 lancelee98 阅读(128) 评论(0) 推荐(0) 编辑
摘要: 来源: ClickHouse原理解析与应用实践 (2020年出版的一本书) ClickHouse: Click Stream Data WareHouse 1. 相关名词: A. BI(商业智能) B. OLTP 联机事务处理 C. OLAP 联机分析: 多维分析 1. ROLAP (Relatio 阅读全文
posted @ 2021-09-12 16:19 lancelee98 阅读(199) 评论(0) 推荐(0) 编辑
摘要: 数据库 范数 1nf 属性值不可再分 2nf 消除非主属性的 部分函数依赖 - > 每个非主属性都完全依赖于候选键 避免出现冗余行 3nf 消除非主属性的 传递函数依赖 bcnf 消除主属性的传递函数依赖 连接 内连接 inner join 只返回两张表匹配的记录 全连接 外连接 (outter) 阅读全文
posted @ 2021-09-12 15:40 lancelee98 阅读(40) 评论(0) 推荐(0) 编辑
摘要: 操作系统 程序 进程 线程 1 程序 程序是含有指令和数据的文件,是静态的代码 2 进程 进程是 程序及其数据 在处理器上运行的过程,是资源分配和调度的基本单位(线程引入之前) 引入: 为了描述 程序动态执行过程的性质,并更好的支持并发,引入了进程 3 线程 引入: 解决了1、进程同一时间只能做一件 阅读全文
posted @ 2021-09-12 15:28 lancelee98 阅读(33) 评论(0) 推荐(0) 编辑
摘要: 计算机网络 三次握手 建立连接 第一次握手: 客户机TCP 向 服务器 TCP 发送 连接请求报文段 SYN=1 ACK=0 seq=x 第二次握手: 服务器TCP 收到连接请求报文段后,如同意建立连接,就向客户机发回 确认报文段 并为该TCP 连接分配TCP 缓存和变量。 SYN=ACK=1 ,a 阅读全文
posted @ 2021-09-12 15:24 lancelee98 阅读(52) 评论(0) 推荐(0) 编辑
摘要: Java JAVA 的8中数据类型 1个字节 = 8 位 6种数字类型 byte 1字节,short 2 , int 4, long 8, float 4, double 8 char 2字节=16位 boolean 1位 在使用long时 要在数值后加L 否则当作整型解析 String stirn 阅读全文
posted @ 2021-09-12 15:15 lancelee98 阅读(85) 评论(0) 推荐(0) 编辑
摘要: linux ctrl+alt+t # 终端 ls -la # -l 详细方式罗列 -a 显示所有文件 包括隐藏文件 vi filename # 新建文件并用vi编辑 cp a_file b_file # copy a to b cp a_folder b_folder -r # 将a目录的内容 复制 阅读全文
posted @ 2021-09-12 13:59 lancelee98 阅读(39) 评论(0) 推荐(0) 编辑
摘要: git 基本操作 git init (newrepo) # 新建git仓库 git clone [url] # 克隆git仓库到本地 git add # 将文件添加到缓存 git status # 查看哪些文件被暂存了 哪些没有 git commit # 提交暂存到本地仓库 git reset HE 阅读全文
posted @ 2021-09-12 13:57 lancelee98 阅读(15) 评论(0) 推荐(0) 编辑