码迷,mamicode.com
首页 > 其他好文 > 详细

分布式 面试题

时间:2020-02-19 18:54:23      阅读:68      评论:0      收藏:0      [点我收藏+]

标签:height   info   中间件   适用于   mamicode   全局   inf   执行   如何   

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

  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 :本地生成,不基于数据库,确定 字段太长,做为主键性能差

 

分布式 面试题

标签:height   info   中间件   适用于   mamicode   全局   inf   执行   如何   

原文地址:https://www.cnblogs.com/fanBlog/p/12308531.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!