2023dubbo 面试那些事

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6

一. Dubbo 支持分布式事务吗

目前暂时不支持可与通过 tcc-transaction 框架实现

介绍tcc-transaction 是开源的 TCC 补偿性分布式事务框架

TCC-Transaction 通过 Dubbo 隐式传参的功能避免自己对业务代码的入侵。

二. Dubbo 可以对结果进行缓存吗

为了提高数据访问的速度。Dubbo 提供了声明式缓存以减少用户加缓存的工作量

<dubbo:reference cache=“true” />

其实比普通的配置文件就多了一个标签 cache=“true”

三. Dubbo 必须依赖的包有哪些

Dubbo 必须依赖 JDK其他为可选。

四. Dubbo 支持哪些序列化方式

默认使用 Hessian 序列化还有 Duddo、FastJson、Java 自带序列化。

五. Dubbo 在安全方面有哪些措施

Dubbo 通过 Token 令牌防止用户绕过注册中心直连然后在注册中心上管理授权。

Dubbo 还提供服务黑白名单来控制服务所允许的调用方。

六. 服务调用是阻塞的吗

默认是阻塞的可以异步调用没有返回值的可以这么做。Dubbo 是基于 NIO 的非阻塞实现并行调用客户端不需要启动多线程即可完成并行调用多个远程服务相对多线程开销较小异步调用会返回一个 Future 对象。

七. 服务提供者能实现失效踢出是什么原理

服务失效踢出基于 zookeeper 的临时节点原理。

八. 同一个服务多个注册的情况下可以直连某一个服务吗

可以点对点直连修改配置即可也可以通过 telnet 直接某个服务。

九. Dubbo 服务降级失败重试怎么做

可以通过 dubbo:reference 中设置 mock=“return null”。mock 的值也可以修改为 true然后再跟接口同一个路径下实现一个 Mock 类命名规则是 “接口名称+Mock” 后缀。然后在 Mock 类里实现自己的降级逻辑

十.Dubbo 使用过程中都遇到了些什么问题

在注册中心找不到对应的服务,检查 service 实现类是否添加了@service 注解无法连接到注册中心,检查配置文件中的对应的测试 ip 是否正确

十一. 为什么要有RPC

http接口是在接口不多、系统与系统交互较少的情况下解决信息孤岛初期常使用的一种通信手段优点就是简单、直接、开发方便。利用现成的http协议进行传输。但是如果是一个大型的网站内部子系统较多、接口非常多的情况下RPC框架的好处就显示出来了首先就是长链接不必每次通信都要像http一样去3次握手什么的减少了网络开销其次就是RPC框架一般都有注册中心有丰富的监控管理发布、下线接口、动态扩展等对调用方来说是无感知、统一化的操作。第三个来说就是安全性。最后就是最近流行的服务化架构、服务化治理RPC框架是一个强力的支撑。

socket只是一个简单的网络通信方式只是创建通信双方的通信通道而要实现rpc的功能还需要对其进行封装以实现更多的功能。

RPC一般配合netty框架、spring自定义注解来编写轻量级框架其实netty内部是封装了socket

的较新的jdk的IO一般是NIO即非阻塞IO在高并发网站中RPC的优势会很明显

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6