- 博客(17)
- 收藏
- 关注
原创 15、RabbitMQ
4、消息丢失怎么办(怎么防止消息丢失|怎么保证消息的可靠性?|使用MQ的时候有没有可能出现什么问题)9、在项目中你们使用的是MQ的哪种模式?(死信队列、死信交换机)3、详细说一下MQ是怎么用的?1、微服务之间是怎么交互的?6、怎么保证消息的幂等性?5、消息堆积怎么办?8、延迟消息怎么做?
2025-11-07 15:36:56
1503
原创 14、JVM相关
5. 初始化: 这个阶段是执行类构造器方法的过程,是类加载的最后一步,到了这一步Java虚拟机才开始真正执行类中定义的Java程序代码(字节码) 采用双亲委派的好处: 1) 保证了使用不同的类加载器最终得到的都是同样一个对象 2) 安全 为了防止jdk中的类被覆盖。 当一个类加载器收到类加载任务,会先交给其父类加载器去完成,只有当父类加载器无法完成加载任务时,才会尝试执行加载任务。扩展类加载器(Extension ClassLoader):负责加载 JRE\lib\ext目录中的类。
2025-08-07 16:12:02
1525
原创 13、ELasticSearch(ES)
filter查询操作仅判断是否满足查询条件,不会计算任何分值,也不会关心返回的排序问题,同时,filter查询的结果可以被缓存,提高性能。canel监听:使用canel监听MySQL的binlog,当发现写入操作后,立即读取内容,写入ES。查询文档时,也会先对查询关键字进行分词,然后根据分好的词条直接定位相关文档,再做结果的合并。ES有两个字符串类型,分别是:keyword 和 Text,他们两个的区别主要是在分词方面。保存文档时,会先根据文档进行分词,然后使用分好的词条和文档的id一起存储。
2025-03-25 09:20:45
2403
原创 11、SpringCloud
它的实现原理是,刚开始使用轮询策略并开启一个计时器,每一段时间收集一次所有服务提供者的平均响应时间,然后再给每个服务提供者附上一个权重,权重越高被选中的概率也越大。服务续约:服务提供者会间隔一定时间就给Nacos发送心跳,表明自己在线服务剔除:当nacos一段时间内接收不到服务微服务的续约请求时或者收到微服务的下线请求时,就会将服务地址从服务清单中删除。2)、创建一个Feign的Interface接口,接口上需要添加一个@FeignClient的注解,注解中value值是需要调用的微服务的名字。
2024-09-01 14:27:46
4819
1
原创 10、常用的linux命令和Docker命令
tar zcvf 压缩包。9. 文件压缩 (tar.gz)tar zxvf 压缩包。根目录/ /usr/local。cp 源文件 放的位置。13. 查看进程(比如tomcat)12. 查看端口(比如8080)mv 源文件 放的位置。kill -9 进程id。touch 文件。4. 删除目录(文件)5. 复制目录(文件)6. 剪切目录(文件)
2024-08-23 15:46:13
3357
原创 9、Redis高频面试题
Redis的内存淘汰策略指的是当Redis的内存已经存满,又有新的数据需要保存时的处理方案,官方提供了8种淘汰策略:no-eviction:禁止驱逐数据,也就是说当内存不足以容纳新写入数据时,新写入操作会报错。在Redis6.0之后,为了提升更好的性能,在命令回复处理器使用了多线程来处理回复事件,在命令请求处理器中,将命令的转换使用了多线程,增加命令转换速度,在命令执行的时候,依然是单线程。Reids中,单条命令式原子性执行的,但事务不保证原子性,且没有回滚。
2024-08-06 09:53:09
5515
原创 8、SpringBoot高频面试题
它是由浏览器的同源策略造成的,是浏览器对JavaScript实施的安全限制。:SpringBoot在父工程中进行了大量常见依赖的版本锁定,省去了我们查找依赖版本和解决版本冲突的麻烦。:SpringBoot以功能化的方式将需要的依赖进行组装,并且允许程序员以starter的方式进行引入。命令行参数,SpringBoot在项目启动的时候运行通过命令行直接传递参数,一般用于临时修改配置的情况。@EnableAutoConfiguration:打开自动配置的功能,也可以关闭某个自动配置的选项。
2024-07-23 16:26:17
6356
原创 7、Spring高频面试题
第一种是单例,配置为单例的对象会跟随Spring容器创建而创建,跟随Spring容器销毁而销毁,在Spring容器中无论获取多少次单例对象,得到的都是同一个,这也是Spring中的对象的默认作用域。 IOC,也叫控制反转, 对象以前是我们程序员自己new的,但是现在对象都是由Spring创建并放入到了IOC容器中,如果需要使用某个对象的时候直接从容器中获取; 其实,在我们平时的开发过程中,对象基本上都是配为单例的,这样可以有效的节省资源,只有单例对象存在线程安全问题时,才考虑调整为多例。
2024-07-17 11:17:00
7383
原创 4、线程池高频面试题
拒绝策略是指将任务添加到线程池中时,线程池拒绝该任务所采取的相应策略,官方提供的有4种:(不用背英文,直接说中文)IO密集型时,即该任务需要大量的IO,大部分线程都阻塞,则需要多配置线程数,推荐配置为CPU核数的2倍。但是用它创建的线程池有的没有限制最大线程数,有的没有限制阻塞队列的长度,这样的话,极大可能导致OOM。首先判断线程池里的核心线程是否都在执行任务,如果不是,则创建一个新的工作线程来执行任务。如果工作队列满了,则判断线程数是否小于最大线程数,如果是,则创建临时线程直接执行任务。
2024-07-01 17:43:15
4279
原创 JS 基础总结
Ⅰ、JavaScript的基本语法一、JS脚本的基本结构和几个注意的要点<br /><HTML><br /><HEAD><br /><TITLE>脚本的基本结构</TITLE><br /><SCRIPT language="javascript"><br /> var count=0; //变量的声明类型都用 var<br /> document.write("输出在页面,循环语句的应用");<br /> for(i=0;i<5;i+
2010-12-31 15:41:00
2790
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅