自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(30)
  • 收藏
  • 关注

原创 elasticsearch写入优化

elasticsearch写入优化

2024-03-25 10:27:30 752

原创 elasticsearch写入原理

elasticsearch写入原理

2024-03-25 10:26:59 1164

原创 elasticsearch核心概念

elasticsearch基本概念

2024-03-25 10:26:06 852

原创 netty

netty 网络程序应用框架 客户端 服务器

2022-08-23 20:01:52 256 1

原创 【数据结构与算法-基础篇】

数据结构与算法前言本文只是学习极客时间 王争老师的《数据结构与算法》付费课程的学习笔记与心得,对《数据结构与算法》这门课有兴趣的同志可以通过以下链接购买专栏: https://time.geekbang.org/column/intro/100017301附一张数据结构合算法知识地图:一.复杂度分析1.什么是复杂度分析?1.复杂度描述的是算法执行时间(或占用空间)与数据规模的增长关系2.时间复杂度:  大 O 时间复杂度实际上并不具体表示代码真正的执行时间,而是表示代码执行时间随数据规模增

2022-08-21 16:46:44 748

原创 Oauth2.0实战

oauth2.0 授权

2022-07-22 19:31:39 2228

原创 Docker学习笔记

docker 容器

2021-12-26 23:08:57 571

原创 消息队列基础

消息对列基础文章目录消息对列基础一.剖析高并发电商系统中订单系统的难点1.订单系统功能概览2.问题1:下单支付成功后,非核心业务繁杂,线性执行耗时,用户等待时间过长,怎么办?3. 退款流程,如果退款不成功怎么办?4.有大量未支付订单堆积怎么办?5.订单系统与非核心系统耦合,导致系统整体性能差,不稳定,怎么办?6.大数据团队要订单数据,会不会导致数据库压力过大,怎么解决?7. 秒杀活动,流量过大,系统压力过大怎么办?1.限流方案一2.限流方案二8.订单系统疑难问题脑图汇总二.消息队列原理以及落地1.消息队列

2021-05-08 15:17:40 1697 1

原创 redis核心技术与实战(四)高可用高扩展篇

redis核心技术与实战(四)高可用高扩展篇文章目录1.《redis架构组成》1.redis学习维度2.一个基本的键值型数据库包括什么?2.《redis IO多路复用》1.redis真的是的单线程吗?2.redis为什么使用单线程,多线程不行吗?3.redis 基于多路复用的IO模型1.我们先来看看客户端,服务端IO通信需要哪些操作?2.socket 非阻塞模式3.redis 基于多路复用的IO 模型4.redis 多路复用IO 模型有没有什么性能瓶颈?3.《持久化:AOF和RDB》1.AOF1.AO

2021-05-08 08:38:47 232

原创 redis核心技术与实战(三) 性能篇

redis核心技术与实战(三) 性能篇文章目录1.《redis 有哪些阻塞点?》1. reids阻塞点分析1.客户端交互2.磁盘交互3.主从交互4.切片集群2.关键路径与非关键路径3.redis异步子线程机制4.建议与扩展1.建议2.扩展2.《为什么CPU结构也会影响Redis的性能?》1.CPU多核架构2.CPU多核架构对Redis 性能的影响3.多CPU架构:NUMA4.NUMA架构对redis性能影响5.绑核的好处和坏处,以及解决方案1.好处和坏处2.解决方案3.《响应波动延时:如何应对redis变

2021-05-08 08:36:31 1026

原创 redis核心技术与实战(二)缓存应用篇

redis核心技术与实战(二)缓存应用篇文章目录1.《旁路缓存:redis 在缓存中工作原理》1.缓存的两个特征2.redis 中的两种缓存3.question: 只读缓存 与 读写缓存 写操作的区别?2.《缓存淘汰》1.如何设置缓存的 容量大小2.Redis 缓存有哪些淘汰策略3.淘汰的数据怎么处理?4.redis过期策略5.不同淘汰策略的使用场景3.《缓存不一致问题》1.什么情况下缓存是一致的呢?2.读写缓存策略怎么处理数据不一致情况3.只读缓存处理缓存不一致情况1.无并发情况(重试机制)2.高并发下

2021-05-08 08:34:20 1291

原创 redis核心与实战(一)数据结构篇

redis核心与实战(一)数据结构篇本文是 极客时间 蒋德均老师《redis 核心技术与实战》的简单笔记,对原文有兴趣的同志可以去一下连接去购买:redis核心技术与实战文章目录redis核心与实战(一)数据结构篇1.《redis数据结构概览》1.数据结构概览2.全局哈希表3.列表(list)4.字典(hash)5.集合(set)6.有序集合(sortedset)7.为什么 sortedset,hash,list都会用压缩列表呢 ?2.《redis 动态字符串详解》1.案例:实现一个图片存储系统,并快速

2021-05-08 08:31:31 663

原创 JVM笔记

JVM笔记一. JVM概览1. JVM整体结构图2. JVM 执行流程3.JVM 生命周期4.学习路径二. 类加载1.类加载时机2.类加载过程3.类加载器4.类加载机制三.JVM 运行时内存结构1.字节码文件结构2.程序计数器3.虚拟机栈4. 本地方法栈5.堆6.方法区1.存储内容以及版本比较2.方法区内存溢出7.常量池(class常量池)以及运行时常量池1.常量池(class常量池)2.运行时常量池8.StringTable1.intern()方法2.在Java中有两种创建字符串对象的方式:3.面试题9.

2021-02-03 09:18:40 232

原创 elasticsearch学习笔记(基本语法与原理)

elasticsearch学习笔记一,利用管道读入文件二,elasticsearch中的分页1.form+size 浅分页2.scroll和dcroll-scan3. scroll-after的方式三,elasticsearch原理1. 读数据过程2. 索引数据过程3.写数据3.1写数据过程3.2 写数据底层原理四,删除和更新参考资料一,利用管道读入文件1.首先需要安装附件文本抽取插件:Ingest Attachment Processor Plugin:官方插件2. 创建管道:PUT http:/

2020-09-28 14:57:11 819

原创 java并发编程(二)并发工具类

并发工具类一,并发包种的锁二,线程分工协作三,线程池相关1.线程池的创建1.1为什么创建线程池?1.2 线程池原理1.3 java中的线程池以及使用一,并发包种的锁二,线程分工协作三,线程池相关1.线程池的创建1.1为什么创建线程池?创建一个线程不像创建对象那样在 内存里开辟一块空间,需要调用操作系统内核的 API,然后操作系统要为线程分配一系列的资源,成本较高。所以,为了避免线程频繁创建和销毁,引入了线程池,节约成本。1.2 线程池原理线程池使用1.3 java中的线程池以及使用

2020-09-02 17:42:27 389

原创 Oauth2.0四种授权模式及适用场景

Oauth2.0及SSO原理一.Oauth2.0四种授权模式及适用场景1. Oauth2.0四种授权模式1.授权码模式2..密码模式3.简化模式4.客户端模式二.SSO单点登录原理一.Oauth2.0四种授权模式及适用场景1. Oauth2.0四种授权模式1.授权码模式假设第三方应用域名为https://a.com授权服务器域名为https://b.com2…密码模式3.简化模式4.客户端模式二.SSO单点登录原理...

2020-08-03 21:40:27 6423

原创 java并发编程(一)基础理论篇

基础理论1.并发bug源头1.CPU,内存,I/O设备2.并发bug的源头3.java内存模型1. 线程工作内存2. 什么是java内存模型3.Happens-Before 规则4.Java内存模型底层怎么实现的?4.互斥锁1.互斥锁怎么解决原子性问题2.死锁1.并发bug源头1.CPU,内存,I/O设备CPU,内存,I/O设备三者之间速度差异极大。工作时速度快的设备往往需要等待很长时间。设备性能往往取决于最慢的操作-I/O设备,单方面提升CPU,或内存效率并不能提升操作性能。所以平衡就需要平衡三者

2020-07-27 18:08:52 339

原创 SQL必知必会(三)-进阶篇

数据库结构一,数据页和缓冲池1.数据页1.1数据页的结构1.2数据页中怎么样查找记录2.缓冲池二,数据库中的锁三,其他一,数据页和缓冲池1.数据页1.1数据页的结构MySQL 的 InnoDB 存储引擎中,默认页的大小是 16KB我们可以把这 7 个数据页分成 3 个部分。首先是文件通用部分,也就是文件头和文件尾。它们类似集装箱,将页的内容进行封装,通过文件头和文件尾校验的方式来确保页的传输是完整的。文件头中有两个字段,分别是 FIL_PAGE_PREV 和 FIL_PAGE_NEXT,

2020-05-26 20:05:04 245

原创 SQL必知必会(二)-优化篇

SQL优化篇一,数据库优化篇1.优化从那些方面1.1数据库选择层面,比如传统数据库,键值型数据库,文档型数据库,搜索引擎库 1.2表设计,根据范式或反范式设计合理的库表,表字段根据实际要求设置类型1.3逻辑优化,sql语句方面优化,尽量不走全表扫描1.4物理优化,建立索引1.5添加中间件,比如redis,memcached做为缓存服务器1.6 读写分离,主从备...

2020-05-26 09:56:35 171

原创 SQL必知必会(一)SQL基础篇

SQL基础sql语言DDL:英文叫做 Data Definition Language,也就是数据定义语言,它用来定义我们的数据库对象,包括数据库、数据表和列。通过使用 DDL,我们可以创建,删除和修改数据库和表结构。DQL:DQL,英文叫做 Data Query Language,数据查询语言,我们用它查询想要的记录,它是 SQL 语言的重中之重.DML:英文叫做 Data Manip...

2020-04-22 16:04:50 1800

原创 Git_GeekTime

1.集中式(CVS/SVN)和分布式(GIT)的区别1.1 集中式先说集中式版本控制系统,版本库是集中存放在中央服务器的,而干活的时候,用的都是自己的电脑,所以要先从中央服务器取得最新的版本,然后开始干活,干完活了,再把自己的活推送给中央服务器.缺点:1.安全性低,中央服务器宕机,数据丢失。2.每个个人终端没有 ** 完整的版本库 **3.需要联网进行项目协作1.2分布式分...

2020-03-20 18:29:33 136

转载 设计模式(一)单例模式

单例模式实现方式以及类加载跳转到原文本文主要介绍java的单例模式,以及详细剖析静态内部类之所以能够实现单例的原理。OK,废话不多说,进入正文。首先我们要先了解下单例的四大原则:1.构造私有。2.以静态方法或者枚举返回实例。3.确保实例只有一个,尤其是多线程环境。4.确保反序列换时不会重新构建对象。我们常用的单例模式有:饿汉模式、懒汉模式、双重锁懒汉模式、静态内部类模式、枚举模式...

2019-12-18 12:01:37 144

原创 获取yml配置文件的两种方式@ConfigurationProperties和@Value

一,@ConfigurationProperties可以添加前缀 prefix="xxxx"只当添加配置文件前缀为xxx的属性该注解适用于获取配置文件的属性,配置到某一个类中支持复杂的类型:对象,嵌套对象,复杂集合类型二,@Value适用于获取配置文件某个属性不支持复杂类型当spring-boot-starter-parent 版本为2.1.4时 @Configurati...

2019-12-11 21:01:41 861

转载 spring注解实现原理

spring注解实现原理转载:https://zxf-noimp.iteye.com/blog/1071765注解处理器ClassPathXMLApplicationContext主要方法有三个:public ClassPathXMLApplicationContext(String fileName) { //读取配置文件中管理的bean this....

2019-12-11 20:45:39 216

转载 IDEA介绍配置

IDEA内容聚合转载java知音-IDEA内容聚合

2019-12-11 20:44:41 112

转载 spring单元测试-MockMvc

MockMvc详解——SpringMVC单元测试原文地址一、简介为何使用MockMvc?对模块进行集成测试时,希望能够通过输入URL对Controller进行测试,如果通过启动服务器,建立http client进行测试,这样会使得测试变得很麻烦,比如,启动速度慢,测试验证不方便,依赖网络环境等,所以为了可以对Controller进行测试,我们引入了MockMVC。MockMvc实现了对H...

2019-12-11 20:43:46 155

转载 MAVEN命令详解

clean: 执行该命令会删除项目路径下的target文件,但是不会删除本地的maven仓库已经生成的jar文件compile:编译命令,只编译选定的目标,不管之前是否已经编译过,会在你的项目路径下生成一个target目录,在该目录中包含一个classes文件夹,里面全是生成的class文件及字节码文件。package:这个命令会在你的项目路径下一个target目录,并且拥有compile命令...

2019-10-18 10:25:38 148

转载 参数处理前置接口-HandlerMethodArgumentResolver

/** * @author luozhou * @Description: 参数处理前置类,目前用于处理文章缓存刷新 * @date 2018/11/14 16:35 */public class RequestHandlerMethodArgumentResolver implements HandlerMethodArgumentResolver { @Override ...

2019-07-09 19:45:39 181

转载 SpringBoot启动预加载之CommandLineRunner与ApplicationRunner的使用

我们在使用SpringBoot搭建项目的时候,如果希望在项目启动完成之前,能够初始化一些操作,针对这种需求,可以考虑实现如下两个接口(任一个都可以) 1. org.springframework.boot.CommandLineRunner 2. org.springframework.boot.ApplicationRunner业务场景:应用服务启动时,加载一些数据和执行一些应用的初始...

2019-07-09 10:26:39 607

转载 spring事务

spring事务解析具体参考:https://www.cnblogs.com/ysocean/p/7617620.html一.事务的四个特性原子性(Atomicity):事务是一个原子操作,由一系列动作组成。事务的原子性确保动作要么全部完成,要么完全不起作用。一致性(Consistency):一旦事务完成(不管成功还是失败),系统必须确保它所建模的业务处于一致的状态,而不会是部分完成部分...

2019-06-10 14:13:02 113

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除