Skip to content

Latest commit

 

History

History
76 lines (74 loc) · 8.06 KB

分布式和中间件等.md

File metadata and controls

76 lines (74 loc) · 8.06 KB

分布式和中间件等

  • raft协议 paxos算法
  • ddos 如何避免?怎么预防?怎么发现?利用了TCP什么特点?怎么改进TCP可以预防?服务端处理不了的请求怎么办?连接数最大值需要设置吗?怎么设置? Thrift RPC过程是什么样子的?异构系统怎么完成通信?跟http相比什么优缺点?了解grpc吗?
  • kafka topic partition介绍下 一个 partition对应多少 生产者(不限),对应多少消费者(一对一) zk你们怎么用的
  • Redis与Mysql双写一致性方案
  • 微服务架构是什么?它的优缺点? ACID CAP BASE理论 ,分布式一致性协议,二段、三段、TCC,优缺点 ,RPC过程 ,服务注册中心宕机了怎么办? 微服务还有其他什么组件 ,分布式架构与微服务的关系
  • 从hystrix一路问到原理->自己如何实现->如何优化->响应流编程(reactive streams);
  • 如何识别tcp和udp报文
  • 如果生产者生产的数据量很多,消费者来不及消费这些数据怎么办?
  • Kafka消息是采用Pull模式,还是Push模式?
  • Kafka分区,如何分区等等
  • RPC的过程? 如何做到透明化远程服务调用? 动态代理,把本地调用代理成网络调用 .如何进行服务发布?(Zookeeper) 如何进行序列化与反序列化?(Protobuf、Thrift、Avro) 如何进行通信?(NIO--->Netty)
  • Zookeeper锁是如何实现的?
  • 分布式缓存读写不一致问题
  • Kafka是如何实现高吞吐率的?
  • 配置中心项目, 问实时配置推送怎么做
  • 讨论为什么选择所有的组件依赖放在配置中心中控制 ,我现在要做一个限流功能, 怎么做?这个限流要做成分布式的, 怎么做? 怎么抢锁?锁怎么释放? 加了超时之后有没有可能在没有释放的情况下, 被人抢走锁?怎么解决? 不用 zk 的心跳, 可以怎么解决这个问题呢?假如这个限流希望做成可配置的, 需要有一个后台管理系统随意对某个 api 配置全局流量, 怎么做?
  • 某一个业务中现在需要生成全局唯一的递增 ID, 并发量非常大, 怎么做
  • Kafka 的消费者如何做消息去重?
  • 介绍一下 Kafka 的 ConsumerGroup
  • 瞬时写入量很大可能会打挂存储, 怎么保护?(断路器) 断路器内部怎么实现的?(可以用 ringbuffer) 断路器会造成写入失败, 假如我们不允许写入失败呢?
  • MMM的DB架构,主从未完全同步,master挂了,未同步的内容会造成什么影响,怎么恢复
  • 分布式锁使用和原理?
  • kafka为什么性能高?
  • mq怎么保证消息可靠性?
  • dubbo的设计和完整调用过程(要详细)
  • kafka生产端怎么实现幂等的 kafka如何实现分布式消息 kafka的副本同步机制的理解 kafka怎么进行消息写入的ack
  • 分布式系统怎么做服务治理
  • Dubbo的服务请求失败怎么处理 ,重连机制会不会造成错误
  • 如何实现负载均衡,有哪些算法可以实现?
  • Zookeeper的用途,选举的原理是什么
  • Nginx相关 1.nginx有哪些模块?你比较熟悉哪个? 2.proxy_cache你是怎么配置的?缓存是存在哪里?具体是怎么命中缓存的?
  • spring cloud 组件和实现
  • 消息可靠性保证;(数据幂等、高可用镜像集群、Confirm机制、事务机制、持久性)
  • 任务拆分执行框架与管理基本手段,高可用实现(基于自己熟悉业务说)
  • zookeeper是保存数据的流程(选举算法要知道)
  • 消息可靠性保证;(数据幂等、高可用镜像集群、Confirm机制、事务机制、持久性)
  • 消息队列 1、项目中为什么使用消息队列,消息队列可以用来干什么; 2、如何解决消息重复消费、消息丢失、消息积压、顺序消费等问题; 3、如何保证消息队列得高可用性;
  • Eureka怎么实现高可用; 什么是Eureka的自我保护模式 ;Eureka和ZooKeeper都可以提供服务注册与发现的功能,请说说两个的区别;
  • Dubbo 1、服务注册与发现; 2、SPI; 3、服务暴露过程; 4、服务引用; 5、降级; 6、负载均衡;
  • 如何解决 Redis 的并发竞争 Key 问题。
  • zookeeper宕机与dubbo直连的情况?
  • 消息基于什么传输? 消息如何分发? 消息怎么路由? 如何确保消息不丢失?
  • RabbitMQ 中的 broker 是指什么?cluster 又是指什么? RabbitMQ 概念里的 channel、exchange 和 queue 是逻辑概念,还是对应着进程实体?分别起什么作用?
  • 解释下分布式系统中的cap理论,怎么保证ca?
  • Eureka 服务发现的主要功能 Eureka 服务有多少个实例 Eureka 服务同步每次都是全量吗 Eureka 服务发现的数据一致性 Eureka 如何保证数据可靠性,如何确认是一致的 Eureka 如果实例数太多,会面临同步的问题吗 Zuul 限流是如何实现的 限流是这一层起作用还是下一层起作用 为什么要在你这一层去做呢?那如何保护自身呢? 限流的实现方式,有哪几种算法 时间窗口与令牌桶的对比 配置管理是如何实现的 应用配置的场景 为什么选择 zk 做配置管理 为什么不用 zk 做服务注册 怎么防止雪崩、服务过载这些 网络平时有遇到什么问题吗? 服务间调用丢包、传输速度慢,怎么去解决? 如何查看连接是否丢包 大量的连接导致短暂的瘫痪状态,怎么去解决?
  • Eureka 损失了一致性会带来什么问题呢? Eureka 有主吗?怎么实现的同步?如果遇到了不一致的问题,谁说了算? 如果多个节点同时尝试注册会有问题吗? Eureka 内部采用的一致性算法是什么算法?
  • 介绍 Paxos 原理?缺点是什么? 本机宕机了怎么办?消息表会丢失的? 数据存在哪里?消息表存在磁盘或者内存还是远程的数据库? 本地消息表的缺点和优点是什么?
  • XA 事务和 TCC 的区别 如何解决 XA/TCC 的单点问题(数据分片) 什么是TCC,它的工作过程? TCC 和 XA 的区别? 如果让你优化XA,你会如何优化?
  • skywalking 的监控原理
  • redis分布式锁实现的话,setnx和expire命令,如果A线程将expire操作操作到了B线程了,也就是expire了另一个线程的资源,这种怎么避免?
  • 规定给出的并发量外,如果有额外的流量访问进来了,如何做熔断处理?
  • 搜索时延这么高,该如何进行优化?如何提高响应速度?如何优化以提升用户体验度?
  • 分布式锁的方案,redis和zookeeper那个好,如果是集群部署,高并发情况下哪个性能更好?
  • 如何实现何高并发下的削峰,限流?
  • redis集群,怎么集群,怎么负载,怎么设置?
  • nginx怎么保证各web容器之间不会串?
  • redis的高可用如何保证?
  • spring是如何管理zookeeper的?
  • 了解zookeeper的leader选取算法吗,讲一下它的流程。
  • 分库和分表怎么选择?结合项目场景讨论划分规则
  • kafka的产生背景和在项目中的使用 topic和partition,partition是干什么的 Consumer Group是干什么的 怎么将partition分配到多个broker上?怎么动态调整partition和broker的数量? rebalance什么时候发生,rebalance过程
  • 分布式协调算法:zk的paxos协议原理,zab原理,metaq的raft协议原理;
  • 分布式限流如何实现,原理是什么?
  • 分库分表的实现原理是什么,你所在业务一般是怎么分库分表的?对应逻辑是什么?
  • Nginx轮询的实现原理;
  • 分布式缓存读写不一致问题;
  • 谈谈完全高可用的分布式支付框架的设计构想;
  • dubbo调用其他服务如何做到不检查;
  • 在分布式服务器群中,有两台服务器对共享数据库的同一条数据进行并发修改,如果解决同步问题;
  • 分布式缓存需要具备的特点是什么?
  • 各种消息中间件的底层实现有何不同;
  • mysql同步机制原理,有哪几种同步方法? 数据库主从同步如何实现,事务如何实现?
  • 谈谈你对SOA和微服务的理解,以及分布式架构从应用层面涉及到的调整和挑战。