目录
[1、关于分布式锁的说法,错误的是( )](#1、关于分布式锁的说法,错误的是( ))
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原则的含义是一个软件系统( )。)
9、下列关于ElasticSearch中核心概念描述正确的是
13、下面哪个Java语句声明了一个适合于创建50个字符串对象数组的变量?
[15、Spring Cloud OpenFeign的作用是什么?](#15、Spring Cloud OpenFeign的作用是什么?)
17、在利用延迟插件发送消息时,需要在convertAndSend方法中添加消息处理器结果及实现对应的方法,该处理器和方法的名字分别是
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是非阻塞的、轻量级的乐观锁