分布式 面试题

Posted fanblog

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了分布式 面试题相关的知识,希望对你有一定的参考价值。

分布式系统如果保证接口的幂等性?

  1. 数据设置状态值
  2. 数据库设置唯一性
  3. 每个数据请求有唯一性标识

 

分布式session如何处理?

  1. tomcat+redis,TomcatRedisSessionManager,将所有部署的tomcat都将session存储到redis即可。使用方法不变,是Tomcat封装的类将session存储到了redis,依赖web容器
  2. spring session +redis:spring 将session存储到redis

 

分库分表

  1. 为什么要分库分表?表数据量达到上千万级别,数据库磁盘消耗高,QPS响应慢,需要通过分库分表来优化
  2. 分库分表中间件?中间件有client类型,proxy类型

技术图片

 技术图片

 什么是垂直分和水平分?

技术图片

  技术图片

  技术图片

  技术图片

 

如何平滑的执行分库分表?

  1. 启动多个线程读取原始数据到数据中间件中
  2. 双写迁移方案:
  3.  技术图片

  

分库分表之后全局唯一ID如何生成(主键自增ID)?

  1. 生成主键ID的全局数据库A,每次都去数据库A里面得到主键ID,然后再去其他数据库insert 数据。瓶颈:单库,适用于 并发量小,数据大的情况,每秒最高并发最大为几百的合适。
  2. uuid :本地生成,不基于数据库,确定 字段太长,做为主键性能差

 

以上是关于分布式 面试题的主要内容,如果未能解决你的问题,请参考以下文章

Kafka面试题

2022最新分布式面试题合集,轻松应对Java面试

大数据面试题----HADOOP 面试题

2022最新分布式面试题合集,轻松应对Java面试

经典面试题:分布式事务问题的解决方案

分布式系统的面试题12