Java知识分享网 - 轻松学习从此开始!    

Java知识分享网

Java1234官方群25:java1234官方群25
Java1234官方群25:838462530
        

GIT视频教程(结合github,码云)免费领取

SpringBoot打造全栈在线教育平台实战课程

毕设代做论文包查重联系人QQ:1982956321毕设大神

66套java实战课程无套路领取

Java1234 VIP课程

领取微信扫码登录Java实现视频教程

Java1234至尊VIP(特价活动)

2020年中国平安Java中级笔试面试题 PDF 下载


分享到:
时间:2020-08-23 09:46来源:http://www.java1234.com 作者:小锋  侵权举报
2020年中国平安Java中级笔试面试题 PDF 下载
失效链接处理
2020年中国平安Java中级笔试面试题 PDF 下载


本站整理下载:
 
相关截图:
 
主要内容:

1. redis各种应⽤场景
a. 更多的数据结构;
b. 可持久化;
c. 计数器;
d. 发布-订阅功能;
e. 事务功能;
f. 过期回调功能;
g. 队列功能;
h. 排序、聚合查询功能。
2. redis持久化机制
a. RDB:快照形式是直接把内存中的数据保存到⼀个 dump ⽂件中,定时保存,保存策略。(会丢数据)
b. AOF:把所有的对Redis的服务器进⾏修改的命令都存到⼀个⽂件⾥,命令的集合。(影响性能)
3. mysql调优
a. explain select语句;
b. 当只要⼀条数据时使⽤limit 1;
c. 为搜索字段建索引;
d. 避免select *;
e. 字段尽量使⽤not null;
f. 垂直分割;
g. 拆分⼤的delete和insert语句:delete和insert会锁表;
h. 分表分库分区。
4. 有没了解Docker,Docker和虚拟机有什么区别?
1、虚拟机:我们传统的虚拟机需要模拟整台机器包括硬件,每台虚拟机都需要有⾃⼰的操作系统,虚拟机⼀旦被开启,预分配
给他的资源将全部被占⽤。,每⼀个虚拟机包括应⽤,必要的⼆进制和库,以及⼀个完整的⽤户操作系统。
2、Docker:容器技术是和我们的宿主机共享硬件资源及操作系统可以实现资源的动态分配。
容器包含应⽤和其所有的依赖包,但是与其他容器共享内核。容器在宿主机操作系统中,在⽤户空间以分离的进程运⾏。
3、对⽐:
1. docker启动快速属于秒级别。虚拟机通常需要⼏分钟去启动。
2. docker需要的资源更少,docker在操作系统级别进⾏虚拟化,docker容器和内核交互,⼏乎没有性能损耗,性能优于通过
Hypervisor层与内核层的虚拟化。;
3. docker更轻量,docker的架构可以共⽤⼀个内核与共享应⽤程序库,所占内存极⼩。同样的硬件环境,Docker运⾏的镜
像数远多于虚拟机数量。对系统的利⽤率⾮常⾼
4. 与虚拟机相⽐,docker隔离性更弱,docker属于进程之间的隔离,虚拟机可实现系统级别隔离;
5. 安全性: docker的安全性也更弱。Docker的租户root和宿主机root等同,⼀旦容器内的⽤户从普通⽤户权限提升为root
权限,它就直接具备了宿主机的root权限,进⽽可进⾏⽆限制的操作。虚拟机租户root权限和宿主机的root虚拟机权限是分离的,并且
虚拟机利⽤如Intel的VT-d和VT-x的ring-1硬件隔离技术,这种隔离技术可以防⽌虚拟机突破和彼此交互,⽽容器⾄今还没有任何形式
的硬件隔离,这使得容器容易受到攻击。
6. 可管理性:docker的集中化管理⼯具还不算成熟。各种虚拟化技术都有成熟的管理⼯具,例如VMware vCenter提供完备
的虚拟机管理能⼒。
7. ⾼可⽤和可恢复性:docker对业务的⾼可⽤⽀持是通过快速重新部署实现的。虚拟化具备负载均衡,⾼可⽤,容错,迁移
和数据保护等经过⽣产实践检验的成熟保障机制,VMware可承诺虚拟机99.999%⾼可⽤,保证业务连续性。
8. 快速创建、删除:虚拟化创建是分钟级别的,Docker容器创建是秒级别的,Docker的快速迭代性,决定了⽆论是开发、测
试、部署都可以节约⼤量时间。
9. 交付、部署:虚拟机可以通过镜像实现环境交付的⼀致性,但镜像分发⽆法体系化;Docker在Dockerfile中记录了容器构
建过程,可在集群中实现快速分发和快速部署;
5. 同⼀个宿主机中多个Docker容器之间如何通信?多个宿主机中Docker容器之间如何通信?
1、这⾥同主机不同容器之间通信主要使⽤Docker桥接(Bridge)模式。
2、不同主机的容器之间的通信可以借助于 pipework 这个⼯具。
平安产险-核⼼系统部
1、简历:
1. 介绍简历上主要项⽬,画框架图,说流程。
2. 针对简历上的技能进⾏提问。
2、队列:
3. 说说rabbitmq的结构。
a. 消息处理过程:
b. 四种交换机:
i. 直连交换机,Direct exchange:带路由功能的交换机,根据routing_key(消息发送的时候需要指定)直接绑定到队列,
⼀个交换机也可以通过过个routing_key绑定多个队列。
ii. 扇形交换机,Fanout exchange:⼴播消息。
iii. 主题交换机,Topic exchange:发送到主题交换机上的消息需要携带指定规则的routing_key,主题交换机会根据这个规
则将数据发送到对应的(多个)队列上。
iv. ⾸部交换机,Headers exchange:⾸部交换机是忽略routing_key的⼀种路由⽅式。路由器和交换机路由的规则是通过
Headers信息来交换的,这个有点像HTTP的Headers。将⼀个交换机声明成⾸部交换机,绑定⼀个队列的时候,定义⼀
个Hash的数据结构,消息发送的时候,会携带⼀组hash数据结构的信息,当Hash的内容匹配上的时候,消息就会被写⼊队
列。
4. rabbitmq队列与消费者的关系?
a. ⼀个队列可以绑定多个消费者;
b. 消息分发:若该队列⾄少有⼀个消费者订阅,消息将以循环(round-robin)的⽅式发送给消费者。每条消息只会分发给⼀个
订阅的消费者(前提是消费者能够正常处理消息并进⾏确认)。
5. rabbitmq交换器种类。
1. fanout交换器:它会把所有发送到该交换器的消息路由到所有与该交换器绑定的队列中;
2. direct交换器:direct类型的交换器路由规则很简单,它会把消息路由到哪些BindingKey和RoutingKey完全匹配的队列中;
3. topic交换器:匹配规则⽐direct更灵活。
4. headers交换器:根据发送消息内容的headers属性进⾏匹配(由于性能很差,不实⽤)。
6. 项⽬中哪⾥⽤到了kafka,kafka特性?
a. 场景:
i. ⼤数据部⻔流数据处理;
ii. elk;
b. 特性:
它被设计为⼀个分布式系统,易于向外扩展;
它同时为发布和订阅提供⾼吞吐量;
它⽀持多订阅者,当失败时能⾃动平衡消费者;
它将消息持久化到磁盘,因此可⽤于批量消费,例如ETL,以及实时应⽤程序。

 

------分隔线----------------------------
锋哥公众号


锋哥微信


关注公众号
【Java资料站】
回复 666
获取 
66套java
从菜鸡到大神
项目实战课程