纪莫
码龄8年
关注
提问 私信
  • 博客:35,885
    问答:337
    36,222
    总访问量
  • 42
    原创
  • 1,493,062
    排名
  • 27
    粉丝
  • 0
    铁粉

个人简介:心中有光,人生总会晴朗。

IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:北京市
  • 加入CSDN时间: 2016-05-30
博客简介:

Jimoer

博客描述:
心中有光,人生总会晴朗。
查看详细资料
个人成就
  • 获得34次点赞
  • 内容获得45次评论
  • 获得138次收藏
创作历程
  • 1篇
    2022年
  • 12篇
    2021年
  • 29篇
    2020年
成就勋章
TA的专栏
  • 生活
    2篇
  • MySQL
    5篇
  • elasticsearch
    1篇
  • 分布式
    8篇
  • Java
    35篇
  • 多线程
    14篇
  • Redis
    4篇
  • Java虚拟机
    17篇
  • JVM
    14篇
  • Spring
    3篇
  • HashMap
  • ConcurrentHashMap
兴趣领域 设置
  • 大数据
    mysqlredis
  • 后端
    spring架构
  • 搜索
    elasticsearch
  • 服务器
    linux
创作活动更多

AI大模型如何赋能电商行业,引领变革?

如何使用AI技术实现购物推荐、会员分类、商品定价等方面的创新应用?如何运用AI技术提高电商平台的销售效率和用户体验呢?欢迎分享您的看法

175人参与 去创作
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

春节做的2021年终总结

2021年对我来说是波折多事的一年,这一年经历了很多,终于在能在过年放假的时候抽出时间来写一下年终总结了。无论是在工作还是生活上都经历不少的波折。来吧,流水账开始了
原创
发布博客 2022.02.01 ·
6807 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Elasticsearch写入数据的过程是什么样的?以及是如何快速更新索引数据的?

前言最近面试过程中遇到问Elasticsearch的问题不少,这次总结一下,然后顺便也了解一下Elasticsearch内部是一个什么样的结构,毕竟总不能就只了解个倒排索引吧。本文标题就是我遇到过的两个问题,所以此次基本上只是围绕着这两个问题来总结。ES写入数据在介绍写入数据的过程时,先明确一下ES中的一些关键性的概念:Clouster:集群,由一到N个Elasticsearch服务节点组成。Node:节点,组成Elasticsearch集群的基本单元,单个集群内节点名称唯一。通常一个节点中分配
原创
发布博客 2021.11.18 ·
1804 阅读 ·
5 点赞 ·
4 评论 ·
7 收藏

你说说RPC的一个请求的流程是怎么样的?

前言面试的时候经常被问到RPC相关的问题,例如:你说说RPC实现原理、让你实现一个RPC框架应该考虑哪些地方、RPC框架基础上发起一个请求是怎样一个流程等等。所以这次我就总结一波RPC的相关知识点,提前说明一下,本篇文章只是为了回答一些面试问题,所以只是解释原理,并不会深入挖掘细节。注册中心RPC(Remote Procedure Call)翻译成中文就是远程过程调用\color{red}{远程过程调用}远程过程调用。RPC框架起到的作用就是为了实现,调用远程方法时,能够做到和调用本地方法一样,让开发
原创
发布博客 2021.11.04 ·
1459 阅读 ·
0 点赞 ·
0 评论 ·
6 收藏

用Java如何设计一个阻塞队列,然后说说ArrayBlockingQueue和LinkedBlockingQueue

前言用Java如何设计一个阻塞队列,这个问题是在面滴滴的时候被问到的。当时确实没回答好,只是说了用个List,然后消费者再用个死循环一直去监控list的是否有值,有值的话就处理List里面的内容。回头想想,自己真是一个大傻X,也只有我才会这么设计一个阻塞队列(再说,我这也不是阻塞的队列)。结果自己面试完之后,也没去总结这部分知识,然后过了一段时间,某教育机构的面试又被问到类似的问题了,只不过是换了一个形式,“请用wait方法和notify方法实现一套有生产者和消费者的这种逻辑”。然后我就又蒙圈了,追悔莫
原创
发布博客 2021.06.15 ·
1486 阅读 ·
0 点赞 ·
2 评论 ·
5 收藏

Java中的线程池用过吧?来说说你是怎么理解线程池吧?

前言Java中的线程池用过吧?来说说你是怎么使用线程池的?这句话在面试过程中遇到过好几次了。我甚至这次标题都想写成【Java八股文之线程池】,但是有点太俗套了。虽然,线程池是一个已经被说烂的知识点了,但是还是要写这一篇用来加深自己的印象,但是想使用一个特殊的方式写出来。线程池使用线程池的目的先说一下我们为什么要使用线程池?线程是稀缺资源,不能频繁的创建。而且创建和销毁线程也是比较耗资源的。为了做到解耦,线程的创建与执行任务分开,方便对线程进行维护。为了复用,前面也说了创建和销毁线程比较耗资源
原创
发布博客 2021.05.06 ·
310 阅读 ·
1 点赞 ·
1 评论 ·
1 收藏

MySQL的半同步是什么?

前言年后在进行腾讯二面的时候,写完算法的后问的第一个问题就是,MySQL的半同步是什么?我当时直接懵了,我以为是问的MySQL的两阶段提交的问题呢?结果确认了一下后不是两阶段提交,然后面试官看我连问的是啥都不知道,就直接跳过这个问题,直接聊下一个问题了。MySQL的主从复制我们的一般在大规模、高性能的项目上,都是使用MySQL的复制功能来创建MySQL的主从集群的。主要是可以通过为服务器配置一个或多个备库的方式来进行数据同步。复制的功能不仅有利于构建高性能应用,同时也是高可用、可扩展性、灾难恢复、备份
原创
发布博客 2021.04.18 ·
823 阅读 ·
0 点赞 ·
1 评论 ·
7 收藏

Java实现十个经典排序算法(带动态效果图)

排序算法是老生常谈的了,但是在面试中也有会被问到,例如有时候,在考察算法能力的时候,不让你写算法,就让你描述一下,某个排序算法的思想以及时间复杂度或空间复杂度。我就遇到过,直接问快排的,所以这次我就总结梳理一下经典的十大排序算法以及它们的模板代码。算法分析一个排序算法的好坏,一般是通过下面几个关键信息来分析的,下面先介绍一下这几个关键信息,然后再将常见的排序算法的这些关键信息统计出来。名词介绍时间复杂度:指对数据操作的次数(或是简单的理解为某段代码的执行次数)。举例:O(1):常数时间复杂度
原创
发布博客 2021.03.14 ·
1452 阅读 ·
2 点赞 ·
0 评论 ·
12 收藏

你们一般都是怎么进行SQL调优的?MySQL在执行时是如何选择索引的?

前言
原创
发布博客 2021.03.01 ·
373 阅读 ·
1 点赞 ·
1 评论 ·
2 收藏

迟到的2020年终总结:责任与能力

其实很早就想写一篇年终总结了,可碍于最近一直在骑驴找马,白天工作,晚上面试,周末总结面试的知识点。今天终于放假了,才能够抽出时间来总结一下自己的2020。过去一年的经历受疫情影响,正月初十才回到北京,回到北京后又居家办公了大概一两个月,后面又变成了,单双号去单位办公,五一过后才基本上就恢复正常工作了。个人生活——结婚本来是一开始订的3月底的婚期,结果因为疫情的原因就延期了,疫情反反复复所以一直也没确定下来具体的时间。后面到七八月份的时候,总算是确定了几个日期。然后两家商量了一下,本来打算把日.
原创
发布博客 2021.02.05 ·
385 阅读 ·
2 点赞 ·
7 评论 ·
0 收藏

MySQL的索引为什么用B+Tree?InnoDB的数据存储文件和MyISAM的有何不同?

前言这篇文章的题目,是我真实在面试过程中遇到的问题,某互联网众筹公司在考察面试者MySQL相关知识的第一个问题,我当时还是比较懵的,没想到这年轻人不讲武德,不按套路出牌,一般的问MySQL的相关知识的时候,不都是问索引优化以及索引失效等相关问题吗?怎么还出来了,存储文件的不同?哪怕考察个MVCC机制也行啊。所以这次我就好好总结总结这部分知识点。为什么需要建立索引首先,我们都知道建立索引的目的是为了提高查询速度,那么为什么有了索引就能提高查询速度呢?我们来看一下,一个索引的示意图。如果我有一个SQ
原创
发布博客 2021.01.31 ·
387 阅读 ·
2 点赞 ·
2 评论 ·
2 收藏

你都用过SpringCloud的哪些组件,它们的原理是什么?

前言看到文章的题目了吗?就是这么抽象和笼统的一个问题,确实是我面试中真实被问到的,某共享货车平台的真实面试问题。springcloud确实是用过,但是那是三四年前了,那个时候springcloud刚兴起,我们技术总监让我们调研一下,然后算上我在内的三个同事就一人买了一本springcloud的书籍,开始看,开始研究,正好那个时候DDD也比较火,然后我们就一边研究的springcloud一边按照DDD的模型搭建自己的项目。但是这个项目最后做了三个月,才完成了一期。后面二期还没开始,我就撤了。所以sprin
原创
发布博客 2021.01.17 ·
1076 阅读 ·
4 点赞 ·
11 评论 ·
22 收藏

DFS(深度优先遍历)和BFS(广度优先遍历)Java模板代码

前言这次终于把深度优先-DFS和广度优先遍历-BFS弄明白了,用最基础的递归实现方式来记录一下。先贴一下,二叉树基础节点代码TreeNode,以及N叉树的基础节点代码TreeNode2。// 二叉树节点public class TreeNode { /* 当前节点值 */ int val; /* 左节点 */ TreeNode left; /* 右节点 */ TreeNode right; TreeNode(int val){
原创
发布博客 2021.01.05 ·
1943 阅读 ·
2 点赞 ·
0 评论 ·
6 收藏

Redis的批量操作是什么?怎么实现的延时队列?以及订阅模式、LRU。

前言这次的内容是我自己为了总结Redis知识而扩充的,上一篇其实已经总结了几点知识了,但是Redis的强大,以及适用范围之广可不是单单一篇博文就能总结清的。所以这次准备继续总结,因为第一个问题,Redis的批量操作,是我在面试过程中被真实问到的,当时没答上来,也是因为确实没了解过Redis的批量操作。当时的问题,我还记得比较清晰:Redis执行批量操作的功能是什么?使用场景就是搞促销活动时,会做预缓存,会往缓存里放大批数据,如果直接放的话那么会很慢,怎么能提高效率呢?Redis的批量操作-管道(pip
原创
发布博客 2021.01.04 ·
518 阅读 ·
1 点赞 ·
0 评论 ·
1 收藏

你说一下Redis为什么快吧,怎么实现高可用,还有持久化怎么做的。

前言作为Java程序员,在面试过程中,缓存相关的问题是躲不掉的,肯定会问,例如缓存一致性问题,缓存雪崩、击穿、穿透等。说到缓存,那肯定少不了Redis,我在面试的时候也是被问了很多关于Redis相关的知识,但是Redis的功能太强大了,并不是一时半会儿能掌握好的,因为有些高级特性或是知识平时并不会用到。所以回答的不好,人家就会觉得你对自己平时使用的工具都没有了解,自然就凉凉了。其实很早就有这个打算,打算好好总结一下Redis的知识,但也是由于自己都没有好好的了解Redis呢,所以一直没有开始。这次准备慢
原创
发布博客 2020.12.28 ·
241 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

分布式事务了解吗?你们的多个服务间数据一致性解决方案是什么?

前言看标题就知道,这个又是个在面试中被问到的问题。这个问题其实是在我上次换工作的时候面试被问到过几次,之前也没在意过,觉得这个东西可能比较深奥,我直接说不理解吧。但是随着Java开发这个行业越来越卷,这次换工作一定要做好充足的准备。把之前落下的坑都填好,再出去受虐(面试)。什么是分布式事务我们都知道本地事务是有四个特性的:原子性(atomicity)、一致性(consistency)、隔离性(isolation)和持久性(durability)。本地事务的ACID一般都是靠关系型数据库来完成的,非关
原创
发布博客 2020.12.20 ·
1852 阅读 ·
1 点赞 ·
3 评论 ·
20 收藏

你来讲一下springboot的启动时的一个自动装配过程吧

前言继续总结吧,没有面试就继续夯实自己的基础,前阵子的在面试过程中遇到的各种问题陆陆续续都会总结出来分享给大家,这次要说的也是面试中被问到的一个高频的问题,我当时其实没答好,因为很早之前是看到springboot的启动的一个过程的源码的,但是时间隔得有点久了(两年多没用过springboot),所以当时也没答好。这次好好总结这部分知识。SpringApplication.run()我看网上好多介绍springboot自动装配过的文章时,上来就直接说@SpringBootApplication注解是一个
原创
发布博客 2020.12.14 ·
316 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

你说说对Java的SPI的理解吧

前言最近在面试的时候被问到SPI了,没回答上来,主要也是自己的原因,把自己给带沟里去了,因为讲到了类加载器的双亲委派模型,后面就被问到了有哪些是破坏了双亲委派模型的场景,然后我就说到了SPI,JNDI,以及JDK9的模块化都破坏了双亲委派。然后就被问,那你说说对Java中的SPI的理解吧。然后我就一脸懵逼了,之前只是知道它会破坏双亲委派,也知道是个怎么回事,但是并没有深入了解,那么这次我就好好的来总结一下这个知识吧。什么是SPISPI全称Service Provider Interface,字面意思
原创
发布博客 2020.12.07 ·
251 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

Redis的基础数据结构总结

前言面试被问到Redis相关知识,总是被虐的很惨。但是人就是这样,越挫越勇,就这块儿被虐的惨那我就要啃下这个硬骨头。从这次开始就要总结Redis的相关知识。Redis基础数据类型stringstring是一个可变的字节数组,内部结构类似于Java的ArrayList,采用预分配冗余空间的方式,来减少内存的频繁分配。当字符串小于1M时,扩容都是加倍现有的空间,如果超过1M,扩容时一次最多只扩容1M的空间。string最大空间为512M。当string类型的数据为一个整数时,还可以做计数器使用。例如
原创
发布博客 2020.12.01 ·
255 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

你说一下对Java中的volatile的理解吧,以及它是怎么保证可见性的。

前言volatile相关的知识其实自己一直都是有掌握的,能大概讲出一些知识,例如:它可以保证可见性;禁止指令重排。这两个特性张口就来,但要再往深了问,具体是如何实现这两个特性的,以及在什么场景下使用volatile,为什么不直接用synchronized这种深入和扩展相关的问题,就回答的不好了。因为volatile是面试必问的知识,所以这次准备把这部分也给啃掉。系统处理效率与Java内存模型在计算机中,每条程序指令都是在CPU中执行的,而CPU执行指令的数据都是临时存储在内存中的,但是CPU的执行速度
原创
发布博客 2020.11.05 ·
942 阅读 ·
2 点赞 ·
1 评论 ·
6 收藏

你来讲讲AQS是什么吧?都是怎么用的?

前言在Java面试的时候,多线程相关的知识是躲不掉的,肯定会被问。我就被问到了AQS的知识,就直接了当的问,AQS知道是什么吧,来讲讲它是怎么实现的,以及哪些地方用到了它。当时自己确实没有讲好,所以这次来总结一下这个知识点。什么是AQSAQS全称是AbstractQueuedSynchronizer,形如其名,抽象队列同步器。AQS定义了两种资源共享模式:独占式,每次只能有一个线程持有锁,例如ReentrantLock实现的就是独占式的锁资源。共享式,允许多个线程同时获取锁,并发访问共享资源,
原创
发布博客 2020.09.30 ·
1214 阅读 ·
2 点赞 ·
1 评论 ·
14 收藏
加载更多