java面试设计
2022-11-02 17:16:43 0 举报
AI智能生成
登录查看完整内容
java面试题库整理
作者其他创作
大纲/内容
final finally finalize关键字区别?
基础语法
面向对象
hashmap
List 和 Set 的区别?
HashSet 是如何保证不重复的?
HashMap 是线程安全的吗,为什么不是线程安全的(最好画图说明多线程环境下不安全)?
HashMap扩容源码
HashMap 的扩容过程?
集合
函数式编程
流式编程
编程方式
RMI(Remote Method Invocation)
JMS(Java Message Service)
webservice
java远程通讯有哪些方法?
远程通讯
JUC类的问题
并发编程
Java基础
JVM内存结构
JMM内存模型
jmm内存模型与jvm内存结构
1
Young区对象什么时候转移到Old区?
双亲委派
类加载的双亲委派模型是什么?
线上接口请求过慢怎么排查?
浏览器请求慢怎么排查?
四种引用强软弱虚
对象的四种引用?
GC算法有哪些?
2分析工具
JVM内存泄露如何分析?
GC回收为什么要STW?
每秒几十万并发的秒杀系统为什么会频繁发生GC?
虚拟机栈
静态变量
常量
native方法
GC roots的对象有哪些?
GC 串行回收器、并行回收器和并发回收器有什么区别?
GC 收集器有哪些?CMS 收集器与 G1 收集器的特点。
Minor GC 与 Full GC 分别在什么时候发生?
JVM频繁Full GC怎么办?
GC相关
日均百万级交易系统如何优化JVM?
内存泄露如何查原因?
JVM参数
JVM参数有哪些?
JVM调优
SPI
JVM
JUC的问题
synchronized与Lock的区别
volatile和synchronized区别
Java NIO的几个核心组成部分是什么?作用分别是什么?
并发相关
Java并发
解释一下IOC?
Spring的AOP?
Spring事务?
Spring循环依赖问题?
spring核心
Springboot启动过程?
Springboot
reactive
spring
MyBatis常见问题
MyBatis常见面试问题
参考资料
Mybatis
Java八股文
Java路线图
Java冷知识
Java架构-之冷知识
Java
netty面试
常见面试题
1.主从Reactor线程模型
2.NIO多路复用非阻塞
3.无锁串行化设计思想
4.支持高性能序列化协议
5.零拷贝
6.ByteBuf内存池设计
7.灵活的TCP参数配置
8.并发优化
netty高性能
netty高性能的原因?
Netty为什么选NIO而不是AIO?
IO对比
BIO、NIO、AIO详解
为什么需要netty
为什么需要netty?
1.为什么选netty而不用JDK NIO?
Sun Grizzly/Cindy/Jetty/Apple SwiftNIO/ACE/Apache Mina对比
2.同类框架,为什么选netty?
粘包和半包
3.粘包和半包问题?
4.编解码
5.keepalive与idle监测
6.netty的锁
7.netty的内存使用
8.netty对reactor的支持
netty
Dubbo 是一个分布式、高性能、透明化的 RPC 服务框架,提供服务自动注册、自动发现等高效服务治理方案, 可以和Spring 框架无缝集成。
Dubbo 是什么?
透明化的远程方法调用,就像调用本地方法一样调用远程方法,只需简单配置,没有任何 API 侵入。软负载均衡及容错机制,可在内网替代 F5 等硬件负载均衡器,降低成本,减少单点。服务自动注册与发现,不再需要写死服务提供方地址,注册中心基于接口名查询服务提供者的 IP 地址,并且能够平滑添加或删除服务提供者。
Dubbo 的主要应用场景?
网络通信框架,提供对多种 NIO 框架抽象封装,包括“同步转异步”和“请求-响应”模式的信息交换方式。
Remoting
提供基于接口方法的透明远程过程调用,包括多协议支持,以及软负载均衡,失败容错,地址路由,动态配置等集群支持。
Cluster
服务注册,基于注册中心目录服务,使服务消费方能动态的查找服务提供方,使地址透明,使服务提供方可以平滑增加或减少机器。
Registry
3 个核心功能
Dubbo 的核心功能?
Dubbo 的核心组件?
示意图
提供者连接注册中心,并发本机IP、端口、应用信息和提供服务信息发送至注册中心存储
Provider(提供者)绑定指定端口并启动服务
Consumer(消费者),连接注册中心,并发送应用信息、所求服务信息至注册中心
注册中心根据消费者所求服务信息匹配对应的提供者列表发送至Consumer应用缓存。
Consumer在发起远程调用时基于缓存的消费者列表择其一发起调用。
Provider状态变更会实时通知注册中心、在由注册中心实时推送至Consumer。
流程说明
Consumer与Provider解偶,双方都可以横向增减节点数。
注册中心可集群化,自动容错。
去中心化。注册中心宕机,短时间可依赖本地缓存继续服务调用。
服务提供者无状态,任意一台宕掉后,不影响使用。
设计原因
Dubbo服务注册与发现的流程?
图中左边淡蓝背景的为服务消费方使用的接口,右边淡绿色背景的为服务提供方使用的接口,位于中轴线上的为双方都用到的接口。图中从下至上分为十层,各层均为单向依赖,右边的黑色箭头代表层之间的依赖关系,每一层都可以剥离上层被复用,其中,Service 和 Config 层为 API,其它各层均为 SPI。图中绿色小块的为扩展接口,蓝色小块为实现类,图中只显示用于关联各层的实现类。图中蓝色虚线为初始化过程,即启动时组装链,红色实线为方法调用过程,即运行时调时链,紫色三角箭头为继承,可以把子类看作父类的同一个节点,线上的文字为调用的方法。
各层说明
关系说明
架构图
该层是与实际业务逻辑相关的,根据服务提供方和服务消费方的业务设计对应的接口和实现。
服务接口层(Service)
配置层(Config)
服务代理层(Proxy)
服务注册层(Registry)
集群层(Cluster)
监控层(Monitor)
远程调用层(Protocol)
信息交换层(Exchange)
网络传输层(Transport)
数据序列化层(Serialize)
Dubbo框架设计一共划分了10个层
Dubbo的架构设计?
RMI 协议采用 JDK 标准的 java.rmi.*实现,采用阻塞式短连接和 JDK 标准序列化方式,Java 标准的远程调用协议。连接个数:多连接连接方式:短连接传输协议:TCP传输方式:同步传输序列化:Java 标准二进制序列化适用范围:传入传出参数数据包大小混合,消费者与提供者个数差不多,可传文件。适用场景:常规远程服务方法调用,与原生 RMI 服务互操作
RMI 协议?
Hessian 协议用于集成 Hessian 的服务,Hessian 底层采用 Http 通讯,采用Servlet 暴露服务,Dubbo 缺省内嵌 Jetty 作为服务器实现基于 Hessian 的远程调用协议。连接个数:多连接连接方式:短连接传输协议:HTTP传输方式:同步传输序列化:Hessian 二进制序列化适用范围:传入传出参数数据包较大,提供者比消费者个数多,提供者压力较大,可传文件。适用场景:页面传输,文件传输,或与原生 hessian 服务互操作
Hessian 协议?
采用 Spring 的 HttpInvoker 实现基于 http 表单的远程调用协议。连接个数:多连接连接方式:短连接传输协议:HTTP传输方式:同步传输序列化:表单序列化(JSON)适用范围:传入传出参数数据包大小混合,提供者比消费者个数多,可用浏览器查看,可用表单或 URL 传入参数,暂不支持传文件。适用场景:需同时给应用程序和浏览器 JS 使用的服务。
http?
基于 CXF 的 frontend-simple 和 transports-http 实现基于 WebService 的远程调用协议。连接个数:多连接连接方式:短连接传输协议:HTTP传输方式:同步传输序列化:SOAP 文本序列化适用场景:系统集成,跨语言调用。
Webservice
Thrift 是 Facebook 捐给 Apache 的一个 RPC 框架,当前 dubbo 支持的 thrift协议是对 thrift 原生协议的扩展,在原生协议的基础上添加了一些额外的头信息,比如 service name,magic number 等
Thrif
Triple 是 Dubbo3 提出的基于 HTTP2 的开放协议,旨在解决 Dubbo2 私有协议带来的互通性问题。相比于原有 Dubbo2 协议,Triple 有以下优势:1.原生和 gRPC 协议互通。打通 gRPC 生态,降低从 gRPC 至 Dubbo 的迁移成本。2.增强多语言生态。避免因 CPP/C#/RUST 等语言的 Dubbo SDK 能力不足导致业务难以选型适配的问题。3.网关友好。网关无需参与序列化,方便用户从传统的 HTTP 转泛化 Dubbo 调用网关升级至开源或云厂商的 Ingress 方案。4.完善的异步和流式支持。带来从底层协议到上层业务的性能提升,易于构建全链路异步以及严格保证消息顺序的流式服务。
Triple 协议
协议类问题
Dubbo采用全Spring配置方式,透明化接入应用,对应用没有任何API侵入,只需用Spring加载Dubbo的配置即可,Dubbo基于Spring的Schema扩展进行加载。
Dubbo与Spring的关系?
Dubbo是SOA时代的产物,它的关注点主要在于服务的调用,流量分发、流量监控和熔断。而SpringCloud诞生于微服务架构时代,考虑的是微服务治理的方方面面,另外由于依托了Spirng、SpirngBoot的优势之上,两个框架在开始目标就不一致,Dubbo定位服务治理、SpirngCloud是一个生态。
Dubbo和SpringCloud的关系?
图表
1、Dubbo 底层是使用Netty这样的NIO框架,使⽤的是 RPC 通信,⽽ Spring Cloud 使⽤的是 HTTP RESTFul ⽅式。2、dubbo由于是以Hession序列化⼆进制的传输,占⽤带宽会更少(基于netty等);springCloud是http协议传输,带宽会⽐较多,同时使⽤http协议(http+restful api)⼀般会使⽤JSON报⽂,消耗会更⼤。3、dubbo的开发难度较⼤,原因是dubbo的jar包依赖(存在代码级别的强依赖)问题很多⼤型⼯程⽆法解决;springcloud的接⼝协议约定⽐较⾃由且松散,需要有强有⼒的⾏政措施来限制接⼝⽆序升级。4、dubbo的改进是通过dubbofilter,很多东⻄没有,需要⾃⼰继承,如监控,如⽇志,如限流,如追踪。springcloud具有配置管理、服务发现、断路器、智能路由、微代理、控制总线、⼀次性token、全局锁、选主、分布式会话和集群状态等,满⾜了构建微服务所需的所有解决⽅案。
Dubbo和SpringCloud的区别?
别的还有 Spring cloud、Facebook 的 Thrift、Twitter 的 Finagle 等。
你还了解别的分布式框架吗?
可以的,项⽬地址如下。https://github.com/apache/incubator-dubbo-spring-boot-project
Dubbo 能集成 Spring Boot 吗?
可以通信的,启动 dubbo 时,消费者会从 zk 拉取注册的生产者的地址接口等数据,缓存在本地。每次调用时,按照本地存储的地址进行调用
挂掉是不要紧的,但前提是你没有增加新的服务,如果你要调用新的服务,则是不能办到的。
1. 注册中⼼对等集群,任意⼀台宕掉后,会⾃动切换到另⼀台2. 注册中⼼全部宕掉,服务提供者和消费者仍可以通过本地缓存通讯3. 服务提供者⽆状态,任⼀台 宕机后,不影响使⽤4. 服务提供者全部宕机,服务消费者会⽆法使⽤,并⽆限次重连等待服务者恢复
Dubbo 中 zookeeper 做注册中心,如果注册中心集群都挂掉,发布者和订阅者之间还能通信么?
可以,Dubbo 提供了声明式缓存,⽤于加速热⻔数据的访问速度,以减少⽤户加缓存的⼯作量。
Dubbo可以对结果进⾏缓存吗?
随机,按权重设置随机概率。在一个截面上碰撞的概率高,但调用量越大分布越均匀,而且按概率使用权重后也比较均匀,有利于动态调整提供者权重。(权重可以在 dubbo 管控台配置)
Random LoadBalance
轮循,按公约后的权重设置轮循比率。存在慢的提供者累积请求问题,比如:第二台机器很慢,但没挂,当请求调到第二台时就卡在那,久而久之,所有请求都卡在调到第二台上。
RoundRobin LoadBalance
最少活跃调用数,相同活跃数的随机,活跃数指调用前后计数差。使慢的提供者收到更少请求,因为越慢的提供者的调用前后计数差会越大。
LeastActive LoadBalance
<dubbo:parameter key=\"hash.arguments\" value=\
缺省只对第一个参数 Hash,如果要修改,请配置
<dubbo:parameter key=\"hash.nodes\" value=\"320\" />
缺省用 160 份虚拟节点,如果要修改,请配置
一致性 Hash,相同参数的请求总是发到同一提供者。当某一台提供者挂时,原本发往该提供者的请求,基于虚拟节点,平摊到其它提供者,不会引起剧烈变动。
ConsistentHash LoadBalance
dubbo 服务负载均衡策略?
Dubbo 通过 Token 令牌防止用户绕过注册中心直连,然后在注册中心上管理授权。Dubbo 还提供服务黑白名单,来控制服务所允许的调用方。
Dubbo 在安全机制方面是如何解决的?
dubbo 连接注册中心和直连的区别?
最常用的dubbo性能调优点?
1.consumer的method配置 2.provider的method配置3.consumer的reference配置4.provider的service配置5.consumer的consumer节点配置6.provider的provider节点配置方法级的配置优先级高于接口级,consumer的优先级高于provider。
dubbo配置的优先级顺序?
失败自动切换,当出现失败,重试其它服务器。(缺省)通常用于读操作,但重试会带来更长延迟。可通过 retries=\"2\"来设置重试次数(不含第一次)。
<dubbo:service retries=\"2\" cluster=\"failover\"/>或:<dubbo:reference retries=\"2\" cluster=\"failover\"/>cluster=\"failover\
Failover Cluster(默认)
快速失败,只发起一次调用,失败立即报错。通常用于非幂等性的写操作,比如新增记录。
<dubbo:service cluster=\"failfast\" />或:<dubbo:reference cluster=\"failfast\" />cluster=\"failfast\"和 把 cluster=\"failover\"、retries=\"0\
Failfast Cluster
失败安全,出现异常时,直接忽略。通常用于写入审计日志等操作。
<dubbo:service cluster=\"failsafe\" />或:<dubbo:reference cluster=\"failsafe\" />
Failsafe Cluster
失败自动恢复,后台记录失败请求,定时重发。通常用于消息通知操作。
<dubbo:service cluster=\"failback\" />或:<dubbo:reference cluster=\"failback\" />
Failback Cluster
并行调用多个服务器,只要一个成功即返回。通常用于实时性要求较高的读操作,但需要浪费更多服务资源。可通过 forks=\"2\"来设置最大并行数。
<dubbo:service cluster=“forking\" forks=\"2\"/>或:<dubbo:reference cluster=“forking\" forks=\"2\"/>
Forking Cluster
广播调用所有提供者,逐个调用,任意一台报错则报错。通常用于通知所有提供者更新缓存或日志等本地资源信息。
Broadcast Cluster
调用目前可用的实例(只调用一个),如果当前没有可用的实例,则抛出异常。通常用于不需要负载均衡的场景。
Available Cluster
将集群中的调用结果聚合起来返回结果,通常和group一起配合使用。通过分组对结果进行聚合并返回聚合后的结果,比如菜单服务,用group区分同一接口的多种实现,现在消费方需从每种group中调用一次并返回结果,对结果进行合并之后返回,这样就可以实现聚合菜单项。
Mergeable Cluster
<dubbo:registry address=\"zookeeper://127.0.0.1:2181\" preferred=\"true\" />
指定优先级:preferred=\"true\"注册中心的地址将被优先选择
<dubbo:registry address=\"zookeeper://127.0.0.1:2181\" zone=\"beijing\" />
同中心优先:检查当前请求所属的区域,优先选择具有相同区域的注册中心
<dubbo:registry id=\"beijing\" address=\"zookeeper://127.0.0.1:2181\" weight=\"100\" /><dubbo:registry id=\"shanghai\" address=\"zookeeper://127.0.0.1:2182\" weight=\"10\" />
权重轮询:根据每个注册中心的权重分配流量
缺省值:选择一个可用的注册中心
对于多注册中心间的选址策略有如下四种
多注册中心订阅的场景,注册中心集群间的负载均衡。
ZoneAware Cluster
v2.1.0开始支持
. dubbo 服务集群配置(集群容错模式)9种
默认使用NIO Netty框架也是推荐的选择,另外还集成有Mina、Grizzly。
Dubbo使用的是什么通信框架?
因 dubbo 协议采用单一长连接,假设网络为千兆网卡(1024Mbit=128MByte),根据测试经验数据每条连接最多只能压满 7MByte(不同的环境可能不一样,供参考),理论上 1 个服务提供者需要 20个服务消费者才能压满网卡。
dubbo 通信协议 dubbo 协议为什么要消费者比提供者个数多?
因 dubbo 协议采用单一长连接,如果每次请求的数据包大小为 500KByte,假设网络为千兆网卡(1024Mbit=128MByte),每条连接最大 7MByte(不同的环境可能不一样,供参考),单个服务提供者的 TPS(每秒处理事务数)最大为:128MByte / 500KByte = 262。单个消费者调用单个服务提供者的 TPS(每秒处理事务数)最大为:7MByte / 500KByte = 14。如果能接受,可以考虑使用,否则网络将成为瓶颈。
dubbo 通信协议 dubbo 协议为什么不能传大包?
因为服务的现状大都是服务提供者少,通常只有几台机器,而服务的消费者多,可能整个网站都在访问该服务,比如 Morgan 的提供者只有 6 台提供者,却有上百台消费者,每天有 1.5 亿次调用,如果采用常规的 hessian 服务,服务提供者很容易就被压跨,通过单一连接,保证单一消费者不会压死提供者,长连接,减少连接握手验证等,并使用异步 IO,复用线程池,防止 C10K 问题。
dubbo 通信协议 dubbo 协议为什么采用异步单一长连接?
适用范围:传入传出参数数据包较小(建议小于 100K),消费者比提供者个数多,单一消费者无法压满提供者,尽量不要用 dubbo 协议传输大文件或超大字符串。适用场景:常规远程服务方法调用dubbo 协议补充:连接个数:单连接连接方式:长连接传输协议:TCP传输方式:NIO 异步传输序列化:Hessian 二进制序列化
dubbo 通信协议 dubbo 协议适用范围和适用场景?
dubbo: 单一长连接和 NIO 异步通讯,适合大并发小数据量的服务调用,以及消费者远大于提供者。传输协议 TCP,异步,Hessian 序列化;rmi: 采用 JDK 标准的 rmi 协议实现,传输参数和返回参数对象需要实现Serializable 接口,使用 java 标准序列化机制,使用阻塞式短连接,传输数据包大小混合,消费者和提供者个数差不多,可传文件,传输协议 TCP。多个短连接,TCP 协议传输,同步传输,适用常规的远程服务调用和 rmi 互操作。在依赖低版本的 Common-Collections 包,java 序列化存在安全漏洞;webservice: 基于 WebService 的远程调用协议,集成 CXF 实现,提供和原生 WebService 的互操作。多个短连接,基于 HTTP 传输,同步传输,适用系统集成和跨语言调用;http: 基于 Http 表单提交的远程调用协议,使用 Spring 的 HttpInvoke 实现。多个短连接,传输协议 HTTP,传入参数大小混合,提供者个数多于消费者,需要给应用程序和浏览器 JS 调用;hessian: 集成 Hessian 服务,基于 HTTP 通讯,采用 Servlet 暴露服务,Dubbo 内嵌 Jetty 作为服务器时默认实现,提供与 Hession 服务互操作。多个短连接,同步 HTTP 传输,Hessian 序列化,传入参数较大,提供者大于消费者,提供者压力较大,可传文件;memcache: 基于 memcached 实现的 RPC 协议redis: 基于 redis 实现的 RPC 协议
dubbo://(推荐)rmi://hessian://http://webservice://thrift://memcached://redis://rest://
Dubbo 支持哪些协议,每种协议的应用场景,优缺点?
Dubbo 允许配置多协议,在不同服务上⽀持不同协议或者同⼀服务上同时⽀持多种协议。
span style=\
服务提供者端设置超时时间,在 Dubbo 的用户文档中,推荐如果能在服务端多配置就尽量多配置,因为服务提供者比消费者更清楚自己提供的服务特性。
服务消费者端设置超时时间,如果在消费者端设置了超时时间,以消费者端为主,即优先级更高。因为服务调用方设置超时时间控制性更灵活。如果消费方超时,服务端线程不会定制,会产生警告。
两种方式
Dubbo 超时时间怎样设置?
dubbo在调用服务不成功时,默认是会重试两次的。
服务调用超时问题怎么解决?
Multicast 注册中心: Multicast 注册中心不需要任何中心节点,只要广播地址,就能进行服务注册和发现。基于网络中组播传输实现;Zookeeper 注册中心: 基于分布式协调系统 Zookeeper 实现,采用Zookeeper 的 watch 机制实现数据变更;redis 注册中心: 基于 redis 实现,采用 key/Map 存储,住 key 存储服务名和类型,Map 中 key 存储服务 URL,value 服务过期时间。基于 redis 的发布/订阅模式通知数据变更;Simple 注册中心
Dubbo 有些哪些注册中心?
过多的服务URL配置困难
负载均衡分配节点压力过大的情况下也需要部署集群
服务依赖混乱,启动顺序不清晰
过多服务导致性能指标分析难度较大,需要监控
为什么需要服务治理?
默认使用Hessian序列化,还有Duddo、FastJson、Java自带序列化。
Dubbo支持哪些序列化方式?
2014 年开始停⽌维护过⼏年,17 年开始重新维护,并进⼊了 Apache 项⽬。
Dubbo 停⽌维护了吗?
Dubbox 是继 Dubbo 停⽌维护后,当当⽹基于 Dubbo 做的⼀个扩展项⽬,如加了服务可 Restful 调⽤,更新了开源组件等。
Dubbo和Dubbox之间的区别?
不需要,如果硬要⽤ Web 容器,只会增加复杂性,也浪费资源。
Dubbo需要 Web 容器吗?
Spring Container
Jetty Container
Log4j Container
Dubbo 的服务容器只是⼀个简单的 Main ⽅法,并加载⼀个简单的 Spring 容器,⽤于暴露服务。
Dubbo内置了哪⼏种服务容器?
Spring 配置⽅式
Java API 配置⽅式
Dubbo有哪⼏种配置⽅式?
timeout:⽅法调⽤超时
retries:失败重试次数,默认重试 2 次
loadbalance:负载均衡算法,默认随机
actives 消费者端,最⼤并发调⽤限制
在 Provider 上可以配置的 Consumer 端的属性有哪些?
Dubbo 缺省会在启动时检查依赖的服务是否可⽤,不可⽤时会抛出异常,阻⽌ Spring 初始化完成,默认 check=\"true\",可以通过 check=\"false\" 关闭检查。
Dubbo启动时如果依赖的服务不可⽤会怎样?
当⼀个接⼝有多种实现时,可以⽤ group 属性来分组,服务提供⽅和消费⽅都指定同⼀个 group 即可。
当⼀个服务接⼝有多种实现时怎么做?
可以⽤版本号(version)过渡,多个不同版本的服务注册到注册中⼼,版本号不同的服务相互间不引⽤。这个和服务分组的概念有⼀点类似。
服务上线怎么兼容旧版本?
默认是同步等待结果阻塞的,⽀持异步调⽤。Dubbo 是基于 NIO 的⾮阻塞实现并⾏调⽤,客户端不需要启动多线程即可完成并⾏调⽤多个远程服务,相对多线程开销较⼩,异步调⽤会返回⼀个 Future 对象。
Dubbo服务之间的调⽤是阻塞的吗?
Dubbo⽀持分布式事务吗?
Dubbo 2.2.0 以上版本⽀持。
Dubbo⽀持服务降级吗?
Dubbo 是通过 JDK 的 ShutdownHook 来完成优雅停机的,所以如果使⽤ kill -9 PID 等强制关闭指令,是不会执⾏优雅停机的,只有通过 kill PID 时,才会执⾏。
Dubbo如何优雅停机?
服务失效踢出基于 Zookeeper 的临时节点原理。 (服务机器会在zk上注册⼀个临时节点,服务失效则临时节点被删除)
服务提供者能实现失效踢出是什么原理?
Dubbo 可以使⽤ Pinpoint 和 Apache Skywalking(Incubator) 实现分布式服务追踪,当然还有其他很多⽅案。
如何解决服务调⽤链过⻓的问题?
Dubbo 必须依赖 JDK,其他为可选。
Dubbo必须依赖的包有哪些?
管理控制台主要包含:路由规则,动态配置,服务降级,访问控制,权重调整,负载均衡,等管理功能。
Dubbo的管理控制台能做什么?
Dubbo 会在 Spring 实例化完 bean 之后,在刷新容器最后⼀步发布 ContextRefreshEvent 事件的时候,通知实现了ApplicationListener 的 ServiceBean 类进⾏回调 onApplicationEvent 事件⽅法,Dubbo 会在这个⽅法中调⽤ ServiceBean ⽗类ServiceConfig 的 export ⽅法,⽽该⽅法真正实现了服务的(异步或者⾮异步)发布。
说说 Dubbo 服务暴露的过程。
单⼀⻓连接和NIO异步通讯,适合⼤并发⼩数据量的服务调⽤,以及消费者远⼤于提供者。Dubbo 的设计⽬的是为了满⾜⾼并发⼩数据量的 rpc 调⽤,在⼤数据量下的性能表现并不好,建议使⽤ rmi 或 http 协议。
在使⽤过程中都遇到了些什么问题?
要了解 Dubbo 就必须看其源码,了解其原理,花点时间看下吧,⽹上也有很多教程,后续有时间我也会在公众号上分享Dubbo 的源码。http://songwie.com/attached/dubbo/dubbo2.0.pdf
你读过 Dubbo 的源码吗?
你觉得⽤ Dubbo 好还是 Spring Cloud 好?
Dubbo(54题)
HTTP与RPC的区别?
Eureka注册中心原理
注册中心
中间件
红黑树
java链表是否有环?
1.反转一个单链表。
2.返回中间节点,有2个返回第二个中间的节点
3.输入一个链表,输出该链表中倒数第k个结点。
4.合并两个有序链表。
5.以给定值x为基准将链表分割成两部分,所有小于x的结点排在大于或等于x的结点之前
6.在一个排序的链表中,存在重复的结点,请删除该链表中重复的结点,重复的结点不保留,返回链表头指针。
7.链表的回文结构
8.给定一个链表,判断链表中是否有环。
9. 给定一个链表,返回链表开始入环的第一个节点。 如果链表无环,则返回 null
10. 输入两个链表,找出它们的第一个公共结点
链表常见算法题
java链表详解
算法
数据结构
1、索引数据结构红黑树,Hash,B+树能说下吗?
2、千万级数据表如何用索引快速查找?
3、如何基于索引B+树精准建立高性能索引?
4、联合索引底层数据结构又是怎样的?
5、覆盖索引与聚集索引到底是什么?
6、Mysql最左前缀优化原则是什么?
分库分表的问题和思路
大厂分库分表方案
雪花算法
唯一ID的问题
通常的解决方案是分别查询不同库中不同的表,然后在service中聚合起来。
跨库join的问题
TCC等
事务问题
新老数据兼容的问题
分库分表存在的问题
分库分表
在 MySQL 中 ENUM 的用法是什么?
MySQL 中 InnoDB 支持的四种事务隔离级别名称,以及逐级之间的区别?
CHAR 和 VARCHAR 的区别?
主键和候选键有什么区别?
MySQL集群方案?
MySQL与Oracle的区别?
加了唯一索引,为什么还是产生重复数据?
MySQL
1、BIO,NIO,AIO的区别?
2、什么是阻塞IO以及非阻塞IO?
3、Reactor和Proactor IO设计模式是什么?
4、NIO底层select、poll和epoll实现的区别?
6、Redis、Netty、Tomcat的线程模型与NIO的联系是什么?
配置哨兵ip列表
redis哨兵模式Springboot配置文件怎么配置
缓存空值
布隆过滤器
布隆过滤器原理?
查不存在的值
缓存穿透
热点数据设置永不过期
互斥锁或者队列
热点Key,失效瞬间并发查导致查数据库
缓存击穿
key均匀过期
分级缓存
热点数据永不过期
事前
互斥锁
熔断限流
事中
缓存恢复,事先要考虑好缓存恢复方案,必要时能尽快执行
持久化
事后
所有key过期时间相同,同时失效
缓存雪崩
缓存穿透、缓存击穿、缓存雪崩?
Redis没有并发问题,是单进程的,所有写命令都是串行执行的。
redis如何处理并发问题?
内存存储
Redis使用单个线程处理请求,避免了多个线程之间线程切换和锁资源争用的开销
单线程实现
Redis使用多路复用IO技术,在poll,epool,kqueue选择最优IO实现
非阻塞IO
Redis有诸多可以直接应用的优化数据结构的实现,应用层可以直接使用原生的数据结构提升性能
优化的数据结构
Redis为什么这么快?
高频问题
使用Redis集群,遇到数据一致性问题怎么解决?(Redis和数据库双写一致性)
持久化就是数据写入磁盘,防止服务器宕机导致内存数据丢失。
什么是持久化?
RDB(Redis Database)
AOF(Append only file)
持久化机制
Redis的持久化机制是什么?各有哪些优缺点?
Redis持久化数据和缓存怎么做扩容和缩容?
超出内存后报错
noevction(不淘汰)
Time To Live
volatile-ttl
volatile-random
volatile-lru
volatile-lfu
在设置了过期时间的数据中淘汰
allkeys-random
allkeys-lru
allkeys-lfu
在所有数据中淘汰
淘汰
8种
Redis的数据淘汰策略?
内存
事务
为什么删除数据后,Redis内存占用依然很高?
redis
缓存
数据库
拜占庭将军问题
CAP
架构理论
合适原则,演化原则,简单原则
合适优于先进,演化优于一步到位,简单优于复杂
架构设计三原则
规模带来的复杂度的主要原因是“量变引起质变”
规模
1.功能上的安全,即代码实现层面
防火墙
云服务商承受强大带宽的能力
2.网络架构上的安全
从技术角度分两类
安全
各实现环节考虑成本控制问题
低成本
正确预测变化,完美封装变化。
两个基本条件
不可能每个设计点考虑可扩展性
不可能完全不考虑可扩展性
所有预测都存在出错的可能性
预测变化复杂性
系统要拆分变化层和稳定层
需要设计变化层和稳定层之间的接口
问题
“变化”封装在变化层,不变的封装在“稳定层”
方案一
抽象层稳定
实现层根据具体业务定制开发
实例有装饰者模式,策略模式等等
提炼抽象层和实现层
方案二
方案
可扩展
主节点宕机,其中一个备份节点升级为主节点
一主多备
独裁式
主节点宕机,其中一个从节点升级为主节点
与主备架构的区别
从节点负责读
mysql
一主多从
协商式
ZooKeeper
集群分区
民主式
高可用架构
无状态设计。负载均衡,解决分布式Session问题
秒杀系统
应用层
本质是通过冗余来实现高可用。
负载均衡
业务分级
超时重试
异步调用
缓存预热
无状态
故障转移
多地多活
冗余
令牌桶
漏桶
限流
拒绝服务
关闭服务
降级
熔断
过载保护
幂等
线上压测
jmeter等
线下压测
压测
灰度发布
手段
监控报警
高可用
服务层
如何应对副本同步延迟和中断导致的数据一致性问题
冷备份
异步热备份
同步热备份
热备份
数据备份
冗余备份
失效转移
数据层
高可用分类
浏览器优化
前端业务处理代码优化
减少请求次数
使用浏览器缓存
启用压缩
CDN加速
JS异步
反向代理
减少Cookie传输
前端优化
使用缓存
集群
异步
应用层优化
合理的架构
多线程
资源复用
良好的数据结构
代码优化
高性能存储盘
分布式存储
NoSQL
光纤传输
减少数据库IO操作
读写分离
存储优化
高性能
响应时间
吞吐量
QPS
并发用户数
高并发指标
加机器
增加单机性能
高并发手段
高并发
3H
3H问题
RPC框架
常用的rpc框架有哪些?
限界上下文
DDD
电商秒杀系统
分布式session
分布式Session存储
案例
架构实践
架构
servicemesh
边缘计算
新技术
技术
回答提示:一般人回答这个问题过于平常,只说姓名、年龄、爱好、工作经验,这些在简历上都有。其实,企业最希望知道的是求职者能否胜任工作,包括:最强的技能、最深入研究的知识领域、个性中最积极的部分、做过的最成功的事,主要的成就等,这些都可以和学习无关,也可以和学习有关,但要突出积极的个性和做事的能力,说得合情合理企业才会相信。企业很重视一个人的礼貌,求职者要尊重考官,在回答每个问题之后都说一句“谢谢”,企业喜欢有礼貌的求职者。
1、请你自我介绍一下你自己?
回答提示:沉着冷静、条理清楚、立场坚定、顽强向上、乐于助人和关心他人、适应能力和幽默感、乐观和友爱。
2、你觉得你个性上最大的优点是什么?
回答提示:这个问题企业问的概率很大,通常不希望听到直接回答的缺点是什么等,如果求职者说自己小心眼、爱忌妒人、非常懒、脾气大、工作效率低,企业肯定不会录用你。绝对不要自作聪明地回答“我最大的缺点是过于追求完美”,有的人以为这样回答会显得自己比较出色,但事实上,他已经岌岌可危了。业喜欢求职者从自己的优点说起,中间加一些小缺点,最后再把问题转回到优点上,突出优点的部分,企业喜欢聪明的求职者。
3、说说你最大的缺点?
回答提示:实际上好多公司问这个问题,并不证明一定要加班,只是想测试你是否愿意为公司奉献。回答样本:如果是工作需要我会义不容辞加班,我现在单身,没有任何家庭负担,可以全身心的投入工作。但同时,我也会提高工作效率,减少不必要的加班。
4、你对加班的看法?
回答提示:如果你对薪酬的要求太低,那显然贬低自己的能力;如果你对薪酬的要求太高,那又会显得你分量过重,公司受用不起。一些雇主通常都事先对求聘的职位定下开支预算,因而他们第一次提出的价钱往往是他们所能给予的最高价钱,他们问你只不过想证实一下这笔钱是否足以引起你对该工作的兴趣。如果你自己必须说出具体数目,请不要说一个宽泛的范围,那样你将只能得到最低限度的数字。最好给出一个具体的数字,这样表明你已经对当今的人才市场作了调查,知道像自己这样学历的雇员有什么样的价值。回答样本一:我对工资没有硬性要求,我相信贵公司在处理我的问题上会友善合理。我注重的是找对工作机会,所以只要条件公平,我则不会计较太多。回答样本二:我受过系统的软件编程的训练,不需要进行大量的培训,而且我本人也对编程特别感兴趣。因此,我希望公司能根据我的情况和市场标准的水平,给我合理的薪水。
5、你对薪资的要求?
回答提示:这是每一个应聘者都不希望被问到的问题,但是几乎每个人都会被问到,比较多的答案是“管理者”。但是近几年来,许多公司都已经建立了专门的技术途径。这些工作地位往往被称作“顾问”、“参议技师”或“高级软件工程师”等等。当然,说出其他一些你感兴趣的职位也是可以的,比如产品销售部经理,生产部经理等一些与你的专业有相关背景的工作。要知道,考官总是喜欢有进取心的应聘者,此时如果说“不知道”,或许就会使你丧失一个好机会。最普通的回答应该是“我准备在技术领域有所作为”或“我希望能按照公司的管理思路发展”。
6、你的职业规划?
回答提示:企业的这个问题看上去可有可无,其实很关键,企业不喜欢说“没问题”的人,因为其很注重员工的个性和创新能力。企业不喜欢求职者问个人福利之类的问题,如果有人这样问:贵公司对新入公司的员工有没有什么培训项目,我可以参加吗?或者说贵公司的晋升机制是什么样的?企业将很欢迎,因为体现出你对学习的热情和对公司的忠诚度以及你的上进心。
7、你还有什么问题要问吗?
回答提示:一段时间发现工作不适合我,有两种情况:①如果你确实热爱这个职业,那你就要不断学习,虚心向领导和同事学习业务知识和处事经验,了解这个职业的精神内涵和职业要求,力争减少差距;②你觉得这个职业可有可无,那还是趁早换个职业,去发现适合你的,你热爱的职业,那样你的发展前途也会大点,对单位和个人都有好处。
8、如果通过这次面试我们单位录用了你,但工作一段时间却发现你根本不适合这个职位,你怎么办?
回答提示:①.原则上我会尊重和服从领导的工作安排,同时私底下找机会以请教的口吻,婉转地表达自己的想法,看看领导是否能改变想法。②如果领导没有采纳我的建议,我也同样会按领导的要求认真地去完成这项工作。③.还有一种情况,假如领导要求的方式违背原则,我会坚决提出反对意见,如领导仍固执己见,我会毫不犹豫地再向上级领导反映。
9、在完成某项工作时,你认为领导要求的方式不是最好的,自己还有更好的方法,你应该怎么做?
回答提示:①我本意是为公司努力工作,如果造成经济损失,我认为首要的问题是想方设法去弥补或挽回经济损失。如果我无能力负责,希望单位帮助解决。②分清责任,各负其责,如果是我的责任,我甘愿受罚;如果是一个我负责的团队中别人的失误,也不能幸灾乐祸,作为一个团队,需要互相提携共同完成工作,安慰同事并且帮助同事查找原因总结经验。③总结经验教训,一个人的一生不可能不犯错误,重要的是能从自己的或者是别人的错误中吸取经验教训,并在今后的工作中避免发生同类的错误。检讨自己的工作方法、分析问题的深度和力度是否不够,以致出现了本可以避免的错误。
10、如果你的工作出现失误,给本公司造成经济损失,你认为该怎么办?
回答提示:①正常的“跳槽”能促进人才合理流动,应该支持。②频繁的跳槽对单位和个人双方都不利,应该反对。
11、谈谈你对跳槽的看法?
回答提示:①我会服从领导的指挥,配合同事的工作。②我会从自身找原因,仔细分析是不是自己工作做得不好让领导不满意,同事看不惯。还要看看是不是为人处世方面做得不好,如果是这样的话 我会努力改正。③如果我找不到原因,我会找机会跟他们沟通,请他们指出我的不足,有问题就及时改正。④作为优秀的员工,应该时刻以大局为重,即使在一段时间内,领导和同事对我不理解,我也会做好本职工作,虚心向他们学习,我相信,他们会看见我在努力,总有一天会对我微笑的。
12、工作中你难以和同事、上司相处,你该怎么办?
回答提示:在去公司面试前上网查一下该公司主营业务。如回答:贵公司有意改变策略,加强与国外大厂的 OEM 合作,自有品牌的部分则透过海外经销商。
13、你对于我们公司了解多少?
回答提示:这是想知道面试者对这份工作的热忱及理解度,并筛选因一时兴起而来应试的人,如果是无经验者,可以强调“就算职种不同,也希望有机会发挥之前的经验”。
14、请说出你选择这份工作的动机?
回答提示:说和你要应聘的职位相关的课程,表现一下自己的热诚没有什么坏处。
15、你最擅长的技术方向是什么?
回答提示:企业很想知道未来的员工能为企业做什么,求职者应再次重复自己的优势,然后说:“就我的能力,我可以做一个优秀的员工在组织中发挥能力,给组织带来高效率和更多的收益”。企业喜欢求职者就申请的职位表明自己的能力,比如申请营销之类的职位,可以说:“我可以开发大量的新客户,同时,对老客户做更全面周到的服务,开发老客户的新需求和消费。”等等。
16、你能为我们公司带来什么呢?
回答提示:我经常用的三个词是:适应能力强,有责任心和做事有始终,结合具体例子向主考官解释,
17、最能概括你自己的三个词是什么?
回答提示:回答这个问题时一定要小心,就算在前一个工作受到再大的委屈,对公司有多少的怨言,都千万不要表现出来,尤其要避免对公司本身主管的批评,避免面试官的负面情绪及印象。建议此时最好的回答方式是将问题归咎在自己身上,例如觉得工作没有学习发展的更多关注 Java 大后端公众号空间,自己想在面试工作的相关产业中多加学习,或是前一份工作与自己的生涯规划不合等等,回答的答案最好是积极正面的。回答样本:我希望能获得一份更好的工作,如果机会来临,我会抓住。我觉得目前的工作,已经达到顶峰,即沒有升迁机会。
18、为什么要离职?
回答提示:这是面试者用来评断求职者是否对自己有一定程度的期望、对这份工作是否了解的问题。对于工作有确实学习目标的人通常学习较快,对于新工作自然较容易进入状况,这时建议你,最好针对工作的性质找出一个确实的答案,如业务员的工作可以这样回答:“我的目标是能成为一个超级业务员,将公司的产品广泛的推销出去,达到最好的业绩成效;为了达到这个目标,我一定会努力学习,而我相信以我认真负责的态度,一定可以达到这个目标。”其他类的工作也可以比照这个方式来回答,只要在目标方面稍微修改一下就可以了。
19、对工作的期望与目标何在?
回答提示:企业喜欢问求职者弱点,但精明的求职者一般不直接回答。他们希望看到这样的求职者:继续重复自己的优势,然后说:“对于这个职位和我的能力来说,我相信自己是可以胜任的,只是缺乏经验,这个问题我想我可以进入公司以后以最短的时间来解决,我的学习能力很强,我相信可以很快融入公司的企业文化,进入工作状态。”企业喜欢能够巧妙地躲过难题的求职者。
20、就你申请的这个职位,你认为你还欠缺什么?
回答提示:①沈默是金,不必说什么,否则情况更糟,不过我会接受建设性的批评。②我会等大家冷靜下来再讨论。
21、你通常如何处理別人的批评?
回答提示:我们大家生来都不是十全十美的,我相信我有第二个机会改正我的错误。
22、怎样对待自己的失敗?
回答提示:为贵公司竭力效劳,尽我所能,完成一个项目。
23、什么会让你有成就感?
回答提示:对于这个问题,你要格外小心,如果你已经对该单位作了研究,你可以回答一些详细的原因,像“公司本身的高技术开发环境很吸引我。”、“我同公司出生在同样的时代,我希望能够进入一家与我共同成长的公司。”、“你们公司一直都稳定发展,在近几年来在市场上很有竞争力。”、“我认为贵公司能够给我提供一个与众不同的发展道路。”这都显示出你已经做了一些调查,也说明你对自己的未来有了较为具体的远景规划。
24、你为什么愿意到我们公司来工作?
回答提示:这是面试中最险恶的问题,其实是考官布下的一个陷阱,千万不要说任何人的过错,应知成功解决矛盾是一个协作团体中成员所必备的能力。假如你工作在一个服务行业,这个问题简直成了最重要的一个环节。你是否能获得这份工作,将取决于这个问题的回答。考官希望看到你是成熟且乐于奉献的。他们通过这个问题了解你的成熟度和处世能力。在没有外界干涉的情况下,通过妥协的方式来解决才是正确答案。
25、你和别人发生过争执吗?你是怎样解决的?
回答提示:①不宜直接说出具体的困难,否则可能令对方怀疑应聘者不行。②可以尝试迂回战术,说出应聘者对困难所持有的态度——工作中出现一些困难是正常的,也是难免的,但是只要有坚忍不拔的毅力、良好的合作精神以及事前周密而充分的准备,任何困难都是可以克服。分析:一般问这个问题,面试者的希望就比较大了,因为已经在谈工作细节,但常规思路中的回答,又被面试官“骗”了。当面试官询问这个问题的时候,有两个目的。第一,看看应聘者是不是在行,说出的困难是不是在这个职位中一般都不可避免的问题。第二,是想看一下应聘者解决困难的手法对不对,及公司能否提供这样的资源。而不是想了解应聘者对困难的态度。
26、对这项工作,你有哪些可预见的困难?
回答提示: ①如果应聘者对于应聘的职位缺乏足够的了解,最好不要直接说出自己开展工作的具体办法。②可以尝试采用迂回战术来回答,如“首先听取领导的指示和要求,然后就有关情况进行了解和熟悉,接下来制定一份近期的工作计划并报领导批准,最后根据计划开展工作。”。分析:这个问题的主要目的也是了解应聘者的工作能力和计划性、条理性,而且重点想要知道细节。如果向思路中所讲的迂回战术,面试官会认为回避问题,如果引导了几次仍然是回避的话,此人绝对不会录用了。
27、如果我录用你,你将怎样开展工作?
回答提示:①.原则上我会尊重和服从领导的工作安排;同时私底下找机会以请教的口吻,婉转地表达自己的想法,看看领导是否能改变想法。②如果领导没有采纳我的建议,我也同样会按领导的要求认真地去完成这项工作。③.还有一种情况,假如领导要求的方式违背原则,我会坚决提出反对意见,如领导仍固执己见,我会毫不犹豫地再向上级领导反映。
28、在完成某项工作时,你认为领导要求的方式不是最好的,自己还有更好的方法,你应该怎么做?与上级意见不一是,你将怎么办?
常规思路:①如果招聘单位对应届毕业生的应聘者提出这个问题,说明招聘公司并不真正在乎“经验”,关键看应聘者怎样回答。②对这个问题的回答最好要体现出应聘者的诚恳、机智、果敢及敬业。③如“作为应届毕业生,在工作经验方面的确会有所欠缺,因此在读书期间我一直利用各种机会在这个行业里做兼职。我也发现,实际工作远比书本知识丰富、复杂。但我有较强的责任心、适应能力和学习能力,而且比较勤奋,所以在兼职中均能圆满完成各项工作,从中获取的经验也令我受益非浅。请贵公司放心,学校所学及兼职的工作经验使我一定能胜任这个职位。”点评:这个问题思路中的答案尚可,突出自己的吃苦能力和适应性以及学习能力(不是学习成绩)为好。
29、你工作经验欠缺,如何能胜任这项工作?
回答提示:①最重要的是:应聘者要使找招聘单位相信,应聘者在过往的单位的“离职原因”在此家招聘单位里不存在。②避免把“离职原因”说得太详细、太具体。③不能掺杂主观的负面感受,如“太辛苦”、“人际关系复杂”、“管理太混乱”、“公司不重视人才”、“公司排斥我们某某的员工”等。④但也不能躲闪、回避,如“想换换环境”、“个人原因”等。⑤不能涉及自己负面的人格特征,如不诚实、懒惰、缺乏责任感、不随和等。⑥尽量使解释的理由为应聘者个人形象添彩。⑦相关例子:如“我离职是因为这家公司倒闭;我在公司工作了三年多,有较深的感情;从去年始,由于市场形势突变,公司的局面急转直下;到眼下这一步我觉得很遗憾,但还要面对显示,重新寻找能发挥我能力的舞台。”同一个面试问题并非只有一个答案,而同一个答案并不是在任何面试场合都有效,关键在应聘者掌握了规律后,对面试的具体情况进行把握,有意识地揣摩面试官提出问题的心理背景,然后投其所好。分析:除非是薪资太低,或者是最初的工作,否则不要用薪资作为理由。“求发展”也被考官听得太多,离职理由要根据每个人的真实离职理由来设计,但是在回答时一定要表现得真诚。实在想不出来的时候,家在外地可以说是因为家中有事,须请假几个月,公司又不可能准假,所以辞职,这个答案一般面试官还能接受。
30、您在前一家公司的离职原因是什么?
回答提示:每个公司都在不断变化发展的过程中,你当然希望你的员工也是这样。你希望得到那些希望并欢迎变化的人,因为这些人明白,为了公司的发展,变化是公司日常生活中重要组成部分。这样的员工往往很容易适应公司的变化,并会对变化做出积极的响应。
31、为了做好你工作份外之事,你该怎样获得他人的支持和帮助?
回答提示:现在的社会是一个竞争的社会,从这次面试中也可看出这一点,有竞争就必然有优劣,有成功必定就会有失败。往往成功的背后有许多的困难和挫折,如果这次失败了也仅仅是一次而已,只有经过经验经历的积累才能塑造出一个完全的成功者。我会从以下几个方面来正确看待这次失败:①要敢于面对,面对这次失败不气馁,接受已经失去了这次机会就不会回头这个现实,从心理意志和精神上体现出对这次失败的抵抗力。要有自信,相信自己经历了这次之后经过努力一定能行,能够超越自我。②善于反思,对于这次面试经验要认真总结,思考剖析,能够从自身的角度找差距。正确对待自己,实事求是地评价自己,辩证的看待自己的长短得失,做一个明白人。③走出阴影,要克服这一次失败带给自己的心理压力,时刻牢记自己弱点,防患于未然,加强学习,提高自身素质。④认真工作,回到原单位岗位上后,要实实在在、踏踏实实地工作,三十六行、行行出状元,争取在本岗位上做出一定的成绩。⑤再接再厉,成为国家公务员一直是我的梦想,以后如果有机会我仍然后再次参加竞争。
32、果你在这次面试中没有被录用,你怎么打算?
回答提示:举一个你最有把握的例子,把来龙去脉说清楚,而不要说了很多却没有重点。切忌夸大其词,把别人的功劳到说成自己的,很多主管为了确保要用的人是最适合的,会打电话向你的前一个主管征询对你的看法及意见,所以如果说谎,是很容易穿梆的。
33、谈谈你过去做过的成功案例?(工作中遇到什么问题)
回答提示:基本上,如果上班工作有效率,工作量合理的话,应该不太需要加班。可是我也知道有时候很难避免加班,加上现在工作都采用责任制,所以我会调配自己的时间,全力配合。分析:虽然不会有人心甘情愿的加班,但依旧要表现出高配合度的诚意。
34、如何安排自己的时间?会不会排斥加班?
回答提示:希望能借此发挥我的所学及专长,同时也吸收贵公司在这方面的经验,就公司、我个人而言,缔造“双赢”的局面。分析:回答前不妨先询问该公司对这项职务的责任认定及归属,因为每一家公司的状况不尽相同,以免说了一堆理想抱负却发现牛头不对马嘴。
35、这个职务的期许?
回答提示:曾经在报章杂志看过关于贵公司的报道,与自己所追求的理念有志一同。而贵公司在业界的成绩也是有目共睹的,而且对员工的教育训练、升迁等也都很有制度。分析:去面试前先做功课,了解一下该公司的背景,让对方觉得你真的很有心想得到这份工作,而不只是探探路。
36、什么选择我们这家公司?
回答提示:①办公室里每个人有各自的岗位与职责,不得擅离岗位。②根据领导指示和工作安排,制定工作计划,提前预备,并按计划完成。③多请示并及时汇报,遇到不明白的要虚心请教。④抓间隙时间,多学习,努力提高自己的政治素质和业务水平。
37、谈谈如何适应办公室工作的新环境?
回答提示:这是针对转职者提出的问题,建议此时可以配合面试工作的特点作为主要依据来回答,如业务工作需要与人沟通,便可举出之前工作与人沟通的例子,经历了哪些困难,学习到哪些经验,把握这些要点做陈述,就可以轻易过关了。
38、工作中学习到了些什么?
回答提示:很奇怪,这是相当多公司会问的问题,其用意是要概略知道应徵者的求职志向,所以这并非绝对是负面答案,就算不便说出公司名称,也应回答“销售同种产品的公司”,如果应聘的其他公司是不同业界,容易让人产生无法信任的感觉。
39、除了本公司外,还应聘了哪些公司?
回答提示:大多数企业会关心就职时间,最好是回答“如果被录用的话,到职日可按公司规定上班”,但如果还未辞去上一个工作、上班时间又太近,似乎有些强人所难,因为交接至少要一个月的时间,应进一步说明原因,录取公司应该会通融的。
40、何时可以到职?
HR问题
沟通能力
理解能力
离职原因
职业规划
稳定性
上进心
感到委屈的事
感到成就的事
对团队的期望
对工作的期望
性格品质
综合
java后端
技术面试
0 条评论
回复 删除
下一页