自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 JAVA面试题(结合场景)大全 - 微服务篇

用户操作时,系统生成一个Token并存储在Redis中,当用户提交操作时,系统会验证Token的存在性,并在验证通过后删除Token,确保每个Token只被处理一次。在分布式系统中,为了保证分区容错性,我们通常需要在一致性和可用性之间做出选择。当发起远程调用时,Ribbon首先从注册中心获取服务地址列表,然后根据预设的路由策略选择一个服务实例进行调用,常用的策略是轮询。我们项目中采用了Eureka作为服务注册中心,它是Spring Cloud体系中的一个关键组件。

2025-08-18 22:32:02 806

原创 JAVA面试题(结合场景)大全 - SSM篇

EnableAutoConfiguration是核心,它通过@Import导入配置选择器,读取META-INF/spring.factories文件中的类名,根据条件注解决定是否将配置类中的Bean导入到Spring容器中。主要思路是使用AOP的环绕通知和切点表达式,找到需要记录日志的方法,然后通过环绕通知的参数获取请求方法的参数,例如类信息、方法信息、注解、请求方式等,并将这些参数保存到数据库。由于构造函数是bean生命周期中最先执行的,Spring框架无法解决构造方法的循环依赖问题。

2025-08-18 22:14:47 791

原创 JAVA面试题(结合场景)大全 - Redis篇

1. 什么是缓存穿透?怎么解决?候选人:嗯,我想一下。缓存穿透是指查询一个一定不存在的数据,由于存储层查不到数据因此不写入缓存,这将导致这个不存在的数据每次请求都要到 DB 去查询,可能导致 DB 挂掉。这种情况大概率是遭到了攻击。解决方案的话,我们通常都会用布隆过滤器来解决它。2. 你能介绍一下布隆过滤器吗?候选人:嗯,是这样的。布隆过滤器主要是用于检索一个元素是否在一个集合中。我们当时使用的是Redisson实现的布隆过滤器。它的底层原理是,先初始化一个比较大的数组,里面存放的是二进制0或1。一开始

2025-08-18 21:58:32 924

原创 JAVA面试题(结合场景)大全 - MySQL篇

可以在MySQL的系统配置文件中开启慢查询日志,并设置SQL执行时间超过多少就记录到日志文件,比如我们之前项目设置的是2秒,超过这个时间的SQL就会记录在日志文件中,我们就可以在那里找到执行慢的SQL。首先查询数据的ID字段进行分页,然后根据ID列表用子查询来过滤只查询这些ID的数据,因为查询ID时使用的是覆盖索引,所以效率可以提升。:在使用索引时,我们遵循索引创建原则,确保索引字段是查询频繁的,使用复合索引覆盖SQL返回值,避免在索引字段上进行运算或类型转换,以及控制索引数量。

2025-08-18 21:48:46 763

原创 Rabbit MQ

进行大量的远程调用时,传统的Http方式容易造成阻塞,所以引入了的概念,即让消息排队,按照队列进行消费。它能够将发送方发送的信息放入队列中,当新的消息入队时,会通知接收方进行处理,一般消息发送方称为,接收方称为。这样所有的请求,都可以丢到消息队列中,再由消费者取出,不再是直接连接消费者的形式了,而是加了一个中间件,这是一种很好的解耦方案。并且在高并发的情况下,由于消费者能力有限,消息队列也能起到一个的作用,堆积一部分的请求,再由消费者来慢慢处理,而不会像直接调用那样请求蜂拥而至。

2024-08-27 09:56:56 1313

原创 Redis详解

现在是大数据时代(一般的数据库已经解决不了的数据:大数据(海量存储和并行计算))1、单机时代(如MySQL)的瓶颈数据量太大,一个机器存不下数据的索引(MySQL单表300万条数据,一定要建立索引),一个机器内存放不下访问量大(MySQL读写混合 — 性能降低),一个服务器承受不了2、Memcached缓存(减轻服务器的压力) + MySQL + 垂直拆分(读写分离,多个MySQL服务器,有的值负责读,有的值负责写)

2024-08-22 16:43:15 21955

原创 Linux04:三种软件安装方式及服务器基本环境搭建

1、rpm下载地址http://www.oracle.com/technetwork/java/javase/downloads/index.html。官网安装参考手册:https://docs.docker.com/install/linux/docker-ce/centos/4、确保Linux的防火墙端口是开启的,如果是阿里云,需要保证阿里云的安全组策略是开放的!3、运行Tomcat,进入bin目录,和我们以前在Windows下看的都是一样的。2、将文件移动到/usr/tomcat/下,并解压!

2024-08-20 15:05:58 338 1

原创 Linux03:Vim使用及账号用户管理

Vim是从 vi 发展出来的一个文本编辑器。代码补完、编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用。简单的来说, vi 是老式的字处理器,不过功能已经很齐全了,但是还是有可以进步的地方。vim 则可以说是程序开发者的一项很好用的工具。所有的 Unix Like 系统都会内建 vi 文书编辑器,其他的文书编辑器则不一定会存在。连 vim 的官方网站 (http://www.vim.org) 自己也说 vim 是一个程序开发工具而不是文字处理软件。

2024-08-20 14:28:05 910

原创 Linux02:常用的基本命令(必掌握)

Linux系统中使用以下命令来查看文件的内容:cat 由第一行开始显示文件内容tac 从最后一行开始显示,可以看出 tac 是 cat 的倒着写!nl 显示的时候,顺道输出行号!more 一页一页的显示文件内容less 与 more 类似,但是比 more 更好的是,他可以往前翻页!head 只看头几行tail 只看尾巴几行你可以使用 man [命令]来查看各个命令的使用文档,如 :man cp。

2024-08-20 11:24:40 737

原创 Linux01:概述及环境搭建

Linux01:概述及环境搭建

2022-08-10 14:17:00 261 1

空空如也

空空如也

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

TA关注的人

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