一、微服务相关

1、能说下 httprpc区别

可以rPC包含 http
http:种应用协议,主要强调网络通信
rpc远程调用过程,是一种分布式系統之间的通信协议,强调的是服务与服务间的远程调用。一些PC 框架,如 gIRC, 底层用的就是 http2

2、说说有哪些负载均衡算法

轮询、加权、随机、加权、最少链接哈希取模

3、如何知道线上的 QPS?

微服务自动化监控 Prometheus&Grafana,每秒 3000 算是比较高的

4、 Sentinel 限流熔断降级核心源码剖析

核心:滑动时间窗口计数实现每个时问段内统计事件数量,以滑动方式时间向后推进行统计

5、分布式事务 (seata

AT模式默认
前提:基于支持本地 ACID 事务的关系型数据库+java应用:通过jdbc 访问数据库
整体机制:两阶段提交协议的演变
阶段业务数据回滚日志,记录在同一个事务提交,释放锁和资源
阶段:回漆通过阶段回滚日志进行反向补偿 (比如如果是新增了,就删除

6.序列化与反序列化

serializable一个标记接口实现接口的类在 jvm 检查时进行标记该类可序列化然后将该类转换为字节流。保证了对象在不同机
器、进程间的通信(因为转化为字节流不会乱码推荐手动一个序列id 可以提高安全性(避免黑容算改字节流),也能避免不同编泽器
jdk版本不同出现反序列化不兼容问题

二、Dubbo 底层原理源码

1、 为什么注入实现类而是接口通过按口怎么找到具体的提供者实现方法

实现类太稱合,里面代码太多,可能涉及数据库链接问题
通过本地注册表(map)将接口版本号 (@Service (version=” 1.0“)),实现类等进行存储,如果多个类实现一个接口,通过版本号来进行区分(如果不传版本号直接报错

2、注册中心为什么一个单独的服务?

因为要保证服务提供者和消费者部分数据共享注册中心将服务提供者的IP暴露注册中心(如果是集群 List,具体选择哪个提供者,就用到负载均衡)。注意:服务消费者会有本地缓存,从注册中心获取的 IP 会缓存一份到本地

3、rpcgrpc什么区别

grpc是基于 http2协议高性能远程过程调用框架,比rpc具备更高效的序列化机制和网络传输速度,像K8s就是使用grpc (如 API Server、 Controller Manager 等之间就是使用grpc通信)

4、httphttp2 有什么区别

http2是http 协议的一个较新版本,与http 相比有显著的区别,并不是简单http 改进。
1) 多路复用http2引入了多路复用机制,允许在同一个tpc链接上同时请求接收多个响应,减少了因建立多个链接引起的延迟资源占用,提供了效率。
2)二进制协议:http 使用的是文本传输,http2使用了更高效的二进制格式来传输数据
3)服务器推送:http2允许服务器主动向容户端推送资源,减少了客户端端的额外请求
4) 头部压缩:http2 使用头部压缩算法,减少了头部信息,有利于降低延迟

5、 tcp 为什么可以多路复用

头部信息数据分段机制。使用 tcp传输数据时,tcp会将数据分成小块,并且在小块头部加入一些信息 (源端口目标端口等)。这些信息告诉接收方怎么将小块组装成完整数据,这样 tcp可以一个通道上传输多个独立数据流,实现了多路复用

原文地址:https://blog.csdn.net/weixin_54355236/article/details/134654534

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任

如若转载,请注明出处:http://www.7code.cn/show_20710.html

如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱suwngjj01@126.com进行投诉反馈,一经查实,立即删除

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注