java面试题2019(中国平安)

平安产险–ai部门

  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、对⽐:
  5. docker启动快速属于秒级别。虚拟机通常需要⼏分钟去启动。
  6. docker需要的资源更少,docker在操作系统级别进⾏虚拟化,docker容器和内核交互,⼏乎没有性能损耗,性能优于通过
    Hypervisor层与内核层的虚拟化。;
  7. docker更轻量,docker的架构可以共⽤⼀个内核与共享应⽤程序库,所占内存极⼩。同样的硬件环境,Docker运⾏的镜
    像数远多于虚拟机数量。对系统的利⽤率⾮常⾼
  8. 与虚拟机相⽐,docker隔离性更弱,docker属于进程之间的隔离,虚拟机可实现系统级别隔离;
  9. 安全性: docker的安全性也更弱。Docker的租户root和宿主机root等同,⼀旦容器内的⽤户从普通⽤户权限提升为root
    权限,它就直接具备了宿主机的root权限,进⽽可进⾏⽆限制的操作。虚拟机租户root权限和宿主机的root虚拟机权限是分离的,并且
    虚拟机利⽤如Intel的VT-d和VT-x的ring-1硬件隔离技术,这种隔离技术可以防⽌虚拟机突破和彼此交互,⽽容器⾄今还没有任何形式
    的硬件隔离,这使得容器容易受到攻击。
  10. 可管理性:docker的集中化管理⼯具还不算成熟。各种虚拟化技术都有成熟的管理⼯具,例如VMware vCenter提供完备
    的虚拟机管理能⼒。
  11. ⾼可⽤和可恢复性:docker对业务的⾼可⽤⽀持是通过快速重新部署实现的。虚拟化具备负载均衡,⾼可⽤,容错,迁移
    和数据保护等经过⽣产实践检验的成熟保障机制,VMware可承诺虚拟机99.999%⾼可⽤,保证业务连续性。
  12. 快速创建、删除:虚拟化创建是分钟级别的,Docker容器创建是秒级别的,Docker的快速迭代性,决定了⽆论是开发、测
    试、部署都可以节约⼤量时间。
  13. 交付、部署:虚拟机可以通过镜像实现环境交付的⼀致性,但镜像分发⽆法体系化;Docker在Dockerfile中记录了容器构
    建过程,可在集群中实现快速分发和快速部署;
  14. 同⼀个宿主机中多个Docker容器之间如何通信?多个宿主机中Docker容器之间如何通信?
    1、这⾥同主机不同容器之间通信主要使⽤Docker桥接(Bridge)模式。
    2、不同主机的容器之间的通信可以借助于 pipework 这个⼯具。
    平安产险-核⼼系统部
    1、简历:
  15. 介绍简历上主要项⽬,画框架图,说流程。
  16. 针对简历上的技能进⾏提问。
    2、队列:
  17. 说说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的内容匹配上的时候,消息就会被写⼊队
    列。
  18. rabbitmq队列与消费者的关系?
    a. ⼀个队列可以绑定多个消费者;
    b. 消息分发:若该队列⾄少有⼀个消费者订阅,消息将以循环(round-robin)的⽅式发送给消费者。每条消息只会分发给⼀个
    订阅的消费者(前提是消费者能够正常处理消息并进⾏确认)。
  19. rabbitmq交换器种类。
  20. fanout交换器:它会把所有发送到该交换器的消息路由到所有与该交换器绑定的队列中;
  21. direct交换器:direct类型的交换器路由规则很简单,它会把消息路由到哪些BindingKey和RoutingKey完全匹配的队列中;
  22. topic交换器:匹配规则⽐direct更灵活。
  23. headers交换器:根据发送消息内容的headers属性进⾏匹配(由于性能很差,不实⽤)。
  24. 项⽬中哪⾥⽤到了kafka,kafka特性?
    a. 场景:
    i. ⼤数据部⻔流数据处理;
    ii. elk;
    b. 特性:
    它被设计为⼀个分布式系统,易于向外扩展;
    它同时为发布和订阅提供⾼吞吐量;
    它⽀持多订阅者,当失败时能⾃动平衡消费者;
    它将消息持久化到磁盘,因此可⽤于批量消费,例如ETL,以及实时应⽤程序。
  25. rabbitmq、RocketMq、kafka对⽐。
  26. 中⼩型公司⾸选RabbitMQ:管理界⾯简单,⾼并发。
  27. ⼤型公司可以选择RocketMQ:更⾼并发,可对rocketmq进⾏定制化开发。
  28. ⽇志采集功能,⾸选kafka,专为⼤数据准备。
    3、SpringCloud:
  29. 介绍springcloud核⼼组件及其作⽤,以及springcloud⼯作流程。
    M.
    springcloud由以下⼏个核⼼组件构成:
    Eureka:各个服务启动时,Eureka Client都会将服务注册到Eureka Server,并且Eureka Client还可以反过来从Eureka Server拉
    取注册表,从⽽知道其他服务在哪⾥
    Ribbon:服务间发起请求的时候,基于Ribbon做负载均衡,从⼀个服务的多台机器中选择⼀台
    Feign:基于Feign的动态代理机制,根据注解和选择的机器,拼接请求URL地址,发起请求
    Hystrix:发起请求是通过Hystrix的线程池来⾛的,不同的服务⾛不同的线程池,实现了不同服务调⽤的隔离,避免了服务雪崩
    的问题
    Zuul:如果前端、移动端要调⽤后端系统,统⼀从Zuul⽹关进⼊,由Zuul⽹关转发请求给对应的服务
  30. 介绍springcloud⼼跳机制,以及消费端如何发现服务端(Ribbon)?
    特性 ActiveMQ RabbitMQ RocketMQ kafka
    开发语⾔ java erlang java scala
    单机吞吐量 万级 万级 10万级 10万级
    时效性 ms级 us级 ms级 ms级以内
    可⽤性 ⾼(主从架构) ⾼(主从架构) ⾮常⾼(分布式架构) ⾮常⾼(分布式架构)
    功能特性
    成熟的产品,在很多公司
    得到应⽤;有较多的⽂
    档;各种协议⽀持较好
    基于erlang开发,所以并
  • 1
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值