随笔分类 -  面试知识点整理

摘要:基本概念 依赖注入 dependency injection DI: 使相互协作的软件保持松耦合 优点 有助于应用对象之间的解耦 面向切面编程 aspect-oriented programming AOP 使遍布应用各处的功能 分离出来,形成可重用组件 若不使用: 如日志 事务 安全 这类关注点代 阅读全文
posted @ 2021-09-26 10:24 lancelee98 阅读(84) 评论(0) 推荐(0)
摘要:SpringBoot 实战 概念: 简单Java对象 POJO(Plain Old Java Object) 项目对象模型 POM(Project Object Model) 第一章:入门 核心功能 自动配置:针对常见的应用功能 提供相关的配置;消除了传统Spring程序中的样板配置 起步依赖(st 阅读全文
posted @ 2021-09-26 10:20 lancelee98 阅读(334) 评论(0) 推荐(0)
摘要:《Java8 实战》读书笔记 第一章:Java8 1.1.2 流处理: java.util.strem 可以将代码思路改变成 从一个流到另外一个流,Java可以透明地将处理过程并行 拿到几个CPU内核上分别执行Stream操作流水线(简化并行操作的成本) 1.1.3 用行为参数化将代码传递给方法 1 阅读全文
posted @ 2021-09-26 10:13 lancelee98 阅读(108) 评论(0) 推荐(0)
摘要:一、三种网络IO模型: 分类: BIO 同步的、阻塞式 IO NIO 同步的、非阻塞式 IO AIO 异步非阻塞式 IO 阻塞和同步的概念: 阻塞:若读写未完成,调用读写的线程一直等待 非阻塞:若读写未完成,调用读写的线程不用等待,可以处理其他工作 异步:读写过程完全托管给操作系统完成,操作系统完成 阅读全文
posted @ 2021-09-26 10:05 lancelee98 阅读(654) 评论(0) 推荐(0)
摘要:一、Netty简介 1、Netty是异步的、基于事件驱动的网络应用框架,它以高性能、高并发著称。基于事件驱动,简单点说就是 Netty 会根据客户端的连接请求、读、写等事件 做出相应的响应。 2、Netty 主要用于开发基于 TCP 协议的网络 IO 程序。例如构建高性能RPC,实现高性能服务器/客 阅读全文
posted @ 2021-09-26 09:49 lancelee98 阅读(11736) 评论(0) 推荐(4)
摘要:缓存穿透 对一个不存在的数据进行请求,该请求会直接穿透缓存,到数据库查询,数据库中也没有。当并发查不存在的数据时,大量请求到达数据库,给数据库造成很大压力。 解决方案: 过滤请求: 接口层增加校验 如id校验 若id<=0 直接拦截 布隆过滤器 布隆过滤器可以判断某个数据不存在 或 可能存在 方法: 阅读全文
posted @ 2021-09-12 16:38 lancelee98 阅读(134) 评论(0) 推荐(0)
摘要:ZooKepper: 一个用于分布式应用的分布式协调系统 CAP理论: 一个计算机不能同时满足以下三点: Consistency 一致性:多个副本之间的一致性 Availability可用性:每次都能获取正确的响应,但不能保证获取的是最新的数据 Partition Tolerance分区容错性:遇到 阅读全文
posted @ 2021-09-12 16:37 lancelee98 阅读(87) 评论(0) 推荐(0)
摘要:JMH 基础 Java Microbenchmark Harness 用于代码微基准测试的工具套件,主要是基于方法层面的基准测试,精度可以达到纳秒级 可以规避JVM中的JIT 或者其他优化对性能测试造成的影响.JIT(just in time comlilation) 某段代码第一次执行时进行编译, 阅读全文
posted @ 2021-09-12 16:25 lancelee98 阅读(87) 评论(0) 推荐(0)
摘要:https://zhuanlan.zhihu.com/p/149821222 RPC (Remote Procedure Call) 远程过程调用 将服务调用封装在一个本地方法中,让调用者像使用本地方法一样调用服务 调用方和服务方 约定,基于TCP长连接进行数据交互达成 由于方法不在本地执行,因此有 阅读全文
posted @ 2021-09-12 16:24 lancelee98 阅读(145) 评论(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 阅读(389) 评论(0) 推荐(0)
摘要:数据库 范数 1nf 属性值不可再分 2nf 消除非主属性的 部分函数依赖 - > 每个非主属性都完全依赖于候选键 避免出现冗余行 3nf 消除非主属性的 传递函数依赖 bcnf 消除主属性的传递函数依赖 连接 内连接 inner join 只返回两张表匹配的记录 全连接 外连接 (outter) 阅读全文
posted @ 2021-09-12 15:40 lancelee98 阅读(67) 评论(0) 推荐(0)
摘要:计算机网络 三次握手 建立连接 第一次握手: 客户机TCP 向 服务器 TCP 发送 连接请求报文段 SYN=1 ACK=0 seq=x 第二次握手: 服务器TCP 收到连接请求报文段后,如同意建立连接,就向客户机发回 确认报文段 并为该TCP 连接分配TCP 缓存和变量。 SYN=ACK=1 ,a 阅读全文
posted @ 2021-09-12 15:24 lancelee98 阅读(90) 评论(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 阅读(109) 评论(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 阅读(48) 评论(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 阅读(36) 评论(0) 推荐(0)
摘要:MySQL 1、 B+树原理 a) B+ 树:平衡查找树 叶子节点顺序访问指针,具有平衡性 通过顺序访问指针提高区间查找性能 b) 索引节点的key 从左到右非递减排列,某指向节点的区域的key 处于 该指针的左右key之间 c) 查找:在索引节点上递归二分查找,找到key 所在的数据节点,接着再数 阅读全文
posted @ 2021-08-20 15:33 lancelee98 阅读(767) 评论(0) 推荐(0)
摘要:#define LENGTH(array) ( (sizeof(array)) / (sizeof(array[0])) ) #define swap(a,b) do{a=a+b;b=a-b;a=a-b;}while(0) //两个数相同时 会导致结果为0 图片来源:https://blog.csd 阅读全文
posted @ 2019-10-12 18:49 lancelee98 阅读(226) 评论(0) 推荐(0)