【每周一测】Java阶段四第三周学习

目录

[1、关于分布式锁的说法,错误的是( )](#1、关于分布式锁的说法,错误的是( ))

2、JDK动态代理产生的代理类和委托类的关系是

3、下列关于ElasticSearch中基本概念描述错误的是

[4、Spring Cloud 中,Feign 是什么?](#4、Spring Cloud 中,Feign 是什么?)

[5、在JavaScript中,可以使用Date 对象的( )方法返回一个月中的号数](#5、在JavaScript中,可以使用Date 对象的( )方法返回一个月中的号数)

[6、关于Method中的invoke方法说法不正确的是( )](#6、关于Method中的invoke方法说法不正确的是( ))

[7、Open-Close原则的含义是一个软件系统( )。](#7、Open-Close原则的含义是一个软件系统( )。)

8、以下哪些是MVC模式的优点

9、下列关于ElasticSearch中核心概念描述正确的是

10、Spring中处理全局异常常用注解

11、分布式锁与Java中线程的锁有何异同()

12、有关静态初始化块说法正确的是?

13、下面哪个Java语句声明了一个适合于创建50个字符串对象数组的变量?

14、下列哪些操作会使线程释放锁资源?

[15、Spring Cloud OpenFeign的作用是什么?](#15、Spring Cloud OpenFeign的作用是什么?)

16、下列关于延迟队列描述错误的是

17、在利用延迟插件发送消息时,需要在convertAndSend方法中添加消息处理器结果及实现对应的方法,该处理器和方法的名字分别是

18、简述一下CAP原则

19、介绍一下nginx反向代理的作用

20、CAS和悲观锁锁的区别?


1、关于分布式锁的说法,错误的是( )

2、JDK动态代理产生的代理类和委托类的关系是

解题思路: JDK动态代理要求委托类实现一个接口,因为代理类要和委托类实现共同的接口

3、下列关于ElasticSearch中基本概念描述错误的是

解题思路: shard分片是指将一个index分成多个分片,每一个分片上保存一部分数据,不是指多个ES节点,因此C错

4、Spring Cloud 中,Feign 是什么?

解题思路: Feign相当于http客户端,提供了远程调用支持

5、在JavaScript中,可以使用Date 对象的( )方法返回一个月中的号数

getDate()

6、关于Method中的invoke方法说法不正确的是( )

不能访问私有方法

7、Open-Close原则的含义是一个软件系统( )。

8、以下哪些是MVC模式的优点

9、下列关于ElasticSearch中核心概念描述正确的是

10、Spring中处理全局异常常用注解

解题思路: @ControllerAdvice :通过使用该注解定义同的异常处理类,@ExceptionHandler定义异常处理方法;

11、分布式锁与Java中线程的锁有何异同()

解题思路: 线程锁可以使用Java提供的关键字或JUC相关API,并发锁通常使用第三方技术实现

12、有关静态初始化块说法正确的是?

13、下面哪个Java语句声明了一个适合于创建50个字符串对象数组的变量?

14、下列哪些操作会使线程释放锁资源?

B.wait()

C.join()

15、Spring Cloud OpenFeign的作用是什么?

B.实现服务之间的通信

C.原理是基于代理实现的服务间调用

16、下列关于延迟队列描述错误的是

解题思路: 延迟队列就是普通的消息队列,没有什么不同,因此B错;自定义延迟队列只能给消息队列设置TTL,因此每一条经过该消息队列的消息TTL都是相同的,所有D错。

17、在利用延迟插件发送消息时,需要在convertAndSend方法中添加消息处理器结果及实现对应的方法,该处理器和方法的名字分别是

解题思路: 消息处理器的名字是MessagePostProcessor,需要重写postProcessMessage在发送请求前设置TTL

18、简述一下CAP原则

cap原则分别指的是数据一致性、高可用性和分区容错性,这三者不能同时满足,可以是cp或者ap,主要是针对分布式系统。

参考答案:

①一致性:对于客户端的每次读操作,要么读到的是最新的数据,要么读取失败。换句话说,一致性是站在分布式系统的角度,对访问本系统的客户端的一种承诺:要么我给您返回一个错误,要么我给你返回绝对一致的最新数据,不难看出,其强调的是数据正确。

②可用性:任何客户端的请求都能得到响应数据,不会出现响应错误。换句话说,可用性是站在分布式系统的角度,对访问本系统的客户的另一种承诺:我一定会给您返回数据,不会给你返回错误,但不保证数据最新,强调的是不出错。

③分区容忍性:由于分布式系统通过网络进行通信,网络是不可靠的。当任意数量的消息丢失或延迟到达时,系统仍会继续提供服务,不会挂掉。换句话说,分区容忍性是站在分布式系统的角度,对访问本系统的客户端的再一种承诺:我会一直运行,不管我的内部出现何种数据同步问题,强调的是不挂掉。

19、介绍一下nginx反向代理的作用

nginx相当于在客户端和服务端之间的中间人,通过nginx接收客户端的请求和返回服务端的响应。客户端访问的地址不是服务端的实际地址,作用是可以提高安全性,通过nginx配置实现负载均衡。

参考答案:

反向代理功能是nginx的三大主要功能之一。nginx一般同时做为静态web服务器和反向代理服务器,做为web服务器访问静态文件图片、css、js、html等文件,做为反向代理服务器把请求发给后端业务处理服务,如果有多个后端处理节点,会配置负载均衡功能。

20、CAS和悲观锁锁的区别?

参考答案:

悲观锁:将资源锁住,自己释放了,下一个线程才能访问,会阻塞程序

CAS:CAS是非阻塞的、轻量级的乐观锁


相关推荐
潘多编程2 分钟前
动态定时任务在Spring Boot中集成Quartz的实践
java·spring boot·后端
2401_857636393 分钟前
Spring Boot OA系统:企业办公自动化的创新实践
java·spring boot·后端
SiMmming20 分钟前
从0到1部署Tomcat和添加servlet(IDEA2024最新版详细教程)
java·ide·tomcat·intellij-idea·web
gaogao_jack23 分钟前
[Leetcode小记] 3233. 统计不是特殊数字的数字数量
java·算法·leetcode
可乐加.糖27 分钟前
RabbitMQ和RocketMQ相关面试题
java·rabbitmq·rocketmq·ruby·java-rabbitmq
澄澈i29 分钟前
设计模式学习[9]---模板方法模式
c++·学习·设计模式·模板方法模式
小菜日记^_^31 分钟前
Maven高级篇
java·spring boot·后端·spring·maven·intellij-idea·mybatis
Ice1661 小时前
算法学习笔记(十):位运算、数论等
笔记·学习
小杨4041 小时前
高级并发编程系列七(锁入门)
java·后端·性能优化
计算机毕设指导61 小时前
基于SpringBoot的教学辅助平台系统【附源码】
java·spring boot·后端·mysql·spring·tomcat·mybatis