Java Dubbo面试题

1、Dubbo的容错机制有哪些?

Dubbo官网提出总共有六种容错策略

● Failover Cluster模式

失败自动切换,当出现失败,重试其它服务器。(默认)

● Failfast Cluster

快速失败,只发起一次调用,失败立即报错。通常用于非幂等性的写操作,比如新增记录。

● Failsafe Cluster

失败安全,出现异常时,直接忽略。通常用于写入审计日志等操作。

● Failback Cluster

失败自动恢复,后台记录失败请求,定时重发。通常用于消息通知操作。

● Forking Cluster

并行调用多个服务器,只要一个成功即返回。通常用于实时性要求较高的读操作,但需要浪费更多服务资源。可通过forks=”2”来设置最大并行数。

● Broadcast Cluster

广播调用所有提供者,逐个调用,任意一台报错则报错。(2.1.0开始支持)通常用于通知所有提供者更新缓存或日志等本地资源信息。

总结:在实际应用中查询语句容错策略建议使用默认Failover Cluster,而增删改建议使用Failfast Cluster或者使用Failover Cluster(retries=”0”)策略防止出现数据重复添加等等其它问题。建议在设计接口时候把查询接口方法单独做一个接口提供查询。

2、使用dubbo遇到过哪些问题?

增加提供服务版本号和消费服务版本号

这个具体来说不算是一个问题,而是一种问题的解决方案,在我们的实际工作中会面临各种环境资源短缺的问题,也是很实际的问题,刚开始我们还可以提供一个服务进行相关的开发和测试,但是当有多个环境多个版本,多个任务的时候就不满足我们的需求,这时候我们可以通过给提供方增加版本的方式来区分.这样能够剩下很多的物理资源,同时为今后更换接口定义发布在线时,可不停机发布,使用版本号.引用只会找相应版本的服务,例如:

3、dubbo reference注解问题?

@Reference只能在SpringBean实例对应的当前类中使用,暂时无法在父类使用;如果确实要在父类声明一个引用,可通过配置文件配置dubbo:reference,然后在需要引用的地方跟引用SpringBean一样就可以了.

4、出现RpcException:No provider available for remote service异常怎么办?

● 检查连接的注册中心是否正确

● 到注册中心查看相应的服务提供者是否存在

● 检查服务提供者是否正常运行

5、服务提供者没挂,但在注册中心里看不到?

首先,确认服务提供者是否连接了正确的注册中心,不只是检查配置中的注册中心地址,而且要检查实际的网络连接。

其次,看服务提供者是否非常繁忙,比如压力测试,以至于没有CPU片段向注册中心发送心跳,这种情况减小压力将自动恢复。

6、Dubbo的连接方式有哪些?

Dubbo的客户端和服务端有三种连接方式,分别是:广播,直连和使用zookeeper注册中心。

7、Dubbo广播

这种方式是dubbo官方入门程序所使用的连接方式,但是这种方式有很多问题。在企业开发中,不使用广播的方式。taotao-manager服务端配置:

!-- applicationContext-service.xml 文件中 -->

java分布式面试题_Java Dubbo面试题相关推荐

  1. JAVA分布式架构/亿万级病发面试题

    1 分布式架构/亿万级病发面试题 1.1 电商行业特点 分布式 垂直拆分:根据功能模块进行拆分 水平拆分:根据业务层级进行拆分 高并发 用户单位时间内访问服务器数量,是电商行业中面临的主要问题 集群 ...

  2. java实习生面试题_java实习生面试题大全(2019年整理)

    java实习生面试题大全(2019年整理) 标准SQL语法及语句 一道关于group bySQL 语句面试题 表中有A B C 三列,用SQL 语句实现:当A 列大于B 列时选择A 列否则选择B 列, ...

  3. 【Java面试】,zookeeper+dubbo面试题

    为什么jdk8以后HashMap会使用红黑树优化? ConcurrentHashMap底层实现? CAS,ABA,volatile这些是什么? 框架 Spring Spring IOC,Spring ...

  4. java综合面试题_JAVA 综合面试题 PDF 下载

    主要内容: Java面试题整理 Java面向对象 1. super()与this()的区别? This():当前类的对象,super父类对象.Super():在子类访问父类的成员和行为, 必须受类继承 ...

  5. JAVA工程师定向招聘_Java工程师面试题整理[社招篇]

    http://blog.csdn.net/jackfrued/article/details/44921941 1.面向对象的特征有哪些方面? 2.访问修饰符public,private,protec ...

  6. java线程实例题_java线程相关试题实例源码代码

    java线程相关试题实例源码代码. /** * 计算输出其他线程锁计算的数据 */ class ThreadA { public static void main(String[] args) { T ...

  7. java高级mysql面试题_Java高级面试题

    一.基础知识: 1)集合类:List和Set比较,各自的子类比较(ArrayList,Vector,LinkedList:HashSet,TreeSet): 2)HashMap的底层实现,之后会问Co ...

  8. java页面间面向对象的方法面试题_JAVA面向对象面试题带答案(墙裂推荐)

    1) 在Java中,如果父类中的某些方法不包含任何逻辑,并且需要有子类重写,应该使用(c)关键字来申明父类的这些方法. a) Finalc b) Static c) Abstract d) Void ...

  9. java static面试题_Java static面试题

    首页 > 基础教程 > 关键字 > static关键字 Java static面试题 1. 为什么要用static关键字? 通常来说,用new创建类的对象时,数据存储空间才被分配,方 ...

最新文章

  1. plt.rcParams
  2. python标准类型内建函数_Python 标准库系列之内建函数
  3. [cpyhon源代码]dict对象原理学习
  4. 数学能有多美?这个动图看了完全停不下来...
  5. jqGrid与Struts2的结合应用(七) —— 浅谈排序
  6. 【代码笔记】iOS-判断中英文混合的字符长度的两种方法
  7. brew mysql要多久_mac brew 安装 mysql
  8. Solaris10 swap空间管理
  9. 计算机网络第二章-----物理层
  10. npm启动报错——端口被占用
  11. win10很多软件显示模糊_Win7系统和Win10系统你会怎么选?
  12. python期货程序化交易高手心得_10分钟打造WonderTrader上的期货日内交易策略
  13. OBS 卡顿原因 及 优化策略
  14. 启动Maven程序时报错 Error executing Maven
  15. 3t硬盘用什么软件测试显卡,【转】希捷酷鱼3TB网友试用---玩转3T硬盘,就是这么容易...
  16. checkedListBoxControl的用法
  17. 微信小程序商机_盘点微信小程序的八大商机
  18. mapbox-gl开发教程(十):创建marker
  19. java学习-节点1
  20. 教你如何使用blender+threejs搭建一个3d展厅平台 | 大帅老猿threejs特训

热门文章

  1. 沙盘操作个人成长报告
  2. 火山PC抓取快递物流查询接口教程第一课
  3. 渐变填充Gradient
  4. 想问下各位大佬,软件测试实习生面试一般都问啥啊?
  5. JavaScript组合函数的理解
  6. c语言与电子信息工程大学排名,2018电子信息工程专业大学排名 最好的大学有哪些...
  7. 爬虫过程中解决html乱码和获取的文本乱码问题
  8. 内核ACPI函数API之acpi_reboot
  9. 邀请别人进入队伍rust_Rust(腐蚀)怎么tp求大神指教。请写在下面
  10. 【FFmpeg笔记】03-Win10编译ffmpeg4.2.1(For Android)