自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(116)
  • 资源 (1)
  • 收藏
  • 关注

原创 Spring Cloud之负载均衡组件Ribbon原理分析

本文主要讲述了微服务体系下的 `Spring Cloud Netflix` 套件中 `Ribbon` 的使用,并结合部分源码讲述了 `Ribbon` 的底层原理,重点讲述了 `Ribbon` 中是如何获取服务以及如何判定一个服务是否可用,最后也介绍了 `Ribbon` 中默认提供的 `7` 种负载均衡策略

2022-04-12 09:30:03 796

原创 一文彻底解密Spring 源码之Spring MVC

本文重点以 `RequestMappingHandlerMapping` 为例子分析了在 `Spring` 当中如何初始化 `HandlerMethod`,并最终在调用的时候又是如何根据 `url` 获取到对应的方法并进行执行最终完成整个流程。

2022-03-27 17:25:09 1399

原创 如何防止因哈希碰撞引起的DoS攻击

哈希是一种相对比较简单的数据结构,而哈希的随机访问元素时间复杂度可以达到 `O(1)` 级别是因为其和数组有着无法分割的联系,开放寻址法和链地址法是用来解决哈希冲突的两种重要措施,但是在使用过程需要防止哈希碰撞攻击。

2022-01-14 21:10:32 1227

原创 为什么循环队列要浪费一个存储空间

单向队列会出现“假溢出”问题,而循环队列却能解决“假溢出”问题。常规的循环队列实现方法需要浪费一个存储空间,那么如果不浪费一个空间是否也能实现一个循环队列呢?

2022-01-11 09:00:00 2569 1

原创 手把手带你利用栈来实现一个简易版本的计算器

一文掌握栈的四大经典应用场景:括号配对,表达式求值,浏览器前进后退,函数调用;手把手实现一个简易版本的计算器。

2022-01-07 11:26:10 2190

原创 通俗易懂的告诉你如何判断链表中是否有环并找出环的入口位置

假如一个链表中存在环,那么可以利用哈希法和双指针法来判断是否存在环,同时,利用三指针就可以找到环的入口位置

2022-01-05 09:00:00 3150

原创 一文讲透链表操作,看完你也能轻松写出正确的链表代码

掌握链表三大法宝:时刻谨记防止指针丢失;引入哨兵来简化链表的链表操作;巧妙的利用双指针写出更高效简洁的链表代码

2022-01-01 08:00:00 396

原创 算法基础之数组的增删改查和双指针思想的妙用

数组是数据结构中最基础的一种数据结构,数组的特性决定了数组的访问是高效的,但是插入和删除是低效的原因。数组本身比较简单,但是数组又是许多高级算法的载体,数组当中尤其重要的是双指针思想,在数组中的相关操作中,利用双指针可以巧妙的避免操作数组时带来的大量元素移动。

2021-12-24 21:45:38 881 1

原创 一文讲透算法中的时间复杂度和空间复杂度计算方式

想要学好算法,必须要掌握如何分析一个算法的时间复杂度和空间复杂度,只有自己会分析这两个个衡量算法主要性能的标准,才能更好的写出性能优秀的算法,复杂度同时也可以分为最好时间复杂度,最坏时间复杂度,平均时间复杂度和均摊时间复杂度四种类型

2021-12-10 09:30:00 2178 4

原创 Spring Cloud中五花八门的分布式组件我到底该怎么学

本文主要讲述了从单点应用到分布式架构的发展历程,并且描述了微服务当中为什么会诞生出一批组件,其根本原因就是为了解决微服务所带来的的挑战和问题,在文中最后对当前流行的分布式架构组件进行了分类整理,帮助大家梳理思路,这样就可以做到有目的的进行针对性的学习,希望通过本文能让大家对微服务相关组件有一个清晰的学习思路。

2021-12-05 12:58:27 1538 1

原创 Spring依赖注入和循环依赖问题分析

Spring源码揭秘之依赖注入和循环依赖问题分析前言依赖注入的入口方法依赖注入流程分析AbstractBeanFactory#getBeanAbstractBeanFactory#doGetBeanAbstractAutowireCapableBeanFactory#createBeanAbstractAutowireCapableBeanFactory#doCreateBean创建 bean 实例(AbstractAutowireCapableBeanFactory#createBeanInstance)

2021-11-27 21:09:18 1662 2

原创 Spring IOC容器初始化流程源码分析

Spring 源码之 IOC 容器前言IOC 只是一个 Map 集合IOC 三大核心接口IOC 初始化三大步骤定位加载注册总结前言在 Spring 框架中,大家耳熟能详的无非就是 IOC,DI,Spring MVC,AOP,这些是 Spring 中最基础的核心功能,再高级点的功能就还有数据数据访问模块(JDBC,ORM,事务等)。Spring 本身的扩展性也做得非常好,源码当中也是运用了大量设计模式来实现,了解 Spring 源码对于一个 Java 开发人员来说是非常有必要的,从源码中我们也可以学习到很

2021-11-05 21:09:00 700 3

原创 Elasticsearch 中为什么选择倒排索引而不选择 B 树索引

Elasticsearch 中为什么选择倒排索引而选择 B 树索引前言为什么全文索引不使用 B+ 树进行存储全文检索正排索引倒排索引倒排索引如何存储数据FOR 压缩RBM 压缩倒排索引如何存储字典树(Tria Tree)FSTFSM构建 FST总结前言索引可能大家都不陌生,在用关系型数据库时,一些频繁用作查询条件的字段我们都会去建立索引来提升查询效率。在关系型数据库中,我们一般都采用 B 树索引进行存储,所以 B 树索引也是我们接触比较多的一种索引数据结构,然而在 es 中,进行全文搜索的时候却并没有选

2021-10-26 09:44:15 1373 2

原创 Elasticsearch中的Term查询和全文查询

Term 查询和全文(match,match_phrase)查询有什么区别

2021-07-06 09:22:27 4093 11

原创 Elasticsearch中URI Search和RequestBody Search分析

URI Search和Request Body Search

2021-06-15 09:27:50 1168 6

原创 如何设计一个高性能Elasticsearch mapping

动态 mapping 和显式 mapping:text 类型和 keyword 类型

2021-05-26 15:52:22 1854 9

原创 Elasticsearch入门,看这一篇就够了

kinana 的安装和使用,Elasticsearch索引和文档操作

2021-05-17 09:14:33 3119 38

原创 面试官:这些错误都没见过,还敢说会安装Elasticsearch?

面试官:这些错误都没见过,还敢说会安装Elasticsearch前言什么是 Elasticsearch聊聊 Apache Lucene常见名词为什么移除 mapping typeElasticsearch 的安装和配置你必须知道的配置配置 data 和 log配置集群名称(cluster name)配置节点名(node name)配置网络 ip本地回环地址发现集群信息配置配置 discovery.seed_hosts配置 discovery.seed_providers配置 cluster.initial_

2021-05-10 12:54:46 1768 11

原创 为了彻底理解乱码问题,一怒之下我把字符集历史扒了个底朝天

ASCII,ISO-8859-1,GBK,UTF-8,代码点,代码单元,大端模式,小端模式

2021-04-17 18:28:01 2600 14

原创 Java字节流和字符流,是时候总结一下IO流了

字节流和字符流:为什么字符流需要 flush

2021-04-12 12:40:48 2371 4

原创 面试官:聊一聊SpringBoot服务监控机制

SpringBoot actuator 两种监控类型:Http 和 JMX

2021-04-05 19:53:06 6068 22

原创 SpringBoot自动装配原理分析,看完你也能手写一个starter组件

揭秘SpringBoot自动装配机制及手写starter组件

2021-03-25 13:30:42 7136 33

原创 最全的Spring依赖注入方式,你都会了吗

@Autowrite 和 @Resource 以及 @Qualifier 注解的区别

2021-03-20 10:24:56 3609 9

原创 助力面试之ConcurrentHashMap面试灵魂拷问,你能扛多久

ConcurrentHashMap面试十连问,你能扛到第几问?

2021-03-08 20:27:33 4640 16

原创 如何从10亿数据中快速判断是否存在某一个元素

布隆过滤器如何删除元素

2021-02-26 11:02:49 3427 11

原创 不能回滚的Redis事务还能用吗

Redis有事务吗

2021-02-23 11:07:09 2881 12

原创 金三银四助力面试-手把手轻松读懂HashMap源码

掌握HashMap源码,为面试助力

2021-02-18 16:37:15 4212 16

原创 内存耗尽后Redis会发生什么

7种内存淘汰策略

2021-02-14 10:56:49 3054 12

原创 高可用RabbitMQ集群的搭建及原理分析

普通集群和镜像集群

2021-02-11 14:14:16 2987 8

原创 要想用活Redis,Lua脚本是绕不过去的坎

为什么要使用Lua脚本

2021-02-08 14:00:58 2097 13

原创 如何用RabbitMQ实现延迟队列

TTL+死信队列和延迟队列插件两种方案

2021-02-03 18:48:08 1604 9

原创 作为一款内存数据库,为什么断电后Redis数据不会丢失

RDB和AOF持久化机制

2021-01-30 09:58:30 3206 11

原创 同一份数据,Redis为什么要存两次

有序集合为什么要同时用跳表(skipkist)和字典来存储

2021-01-24 20:51:26 2311 14

原创 Redis中哈希分布不均匀该怎么办

Redis 为什么要选择 渐进式 rehash操作

2021-01-20 21:20:45 3080 2

原创 为了加快速度,Redis都做了哪些“变态”设计

为什么列表对象要使用quicklist来进行存储

2021-01-17 21:29:56 1921 11

原创 牺牲速度来节省内存,Redis是觉得自己太快了吗

Redis为什么要用时间换空间

2021-01-15 10:57:39 2156 12

原创 一个简单的字符串,为什么 Redis 要设计的如此特别

学习Redis,必须从二进制安全字符串sds开始

2021-01-11 11:31:33 2544 9

原创 Redis为什么这么快

Redis到底是单线程还是多线程

2021-01-09 11:08:33 2603 13

原创 RabbitMQ不讲武德,发个消息也这么多花招

Direct交换机,Topic交换机,Fanout交换机

2021-01-03 11:29:45 1672 12

原创 Spring中毒太深,离开Spring我居然连最基本的接口都不会写了

手把手带你手写一个Spring框架

2020-12-13 10:03:35 1394

elasticsearch-analysis-pinyin-7.3.1.zip

elasticsearch-analysis-pinyin是一款用于es搜索引擎的拼音分词器,下载之后直接解压放到es对应插件目录下即可正常使用

2020-08-08

空空如也

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

TA关注的人

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