自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(44)
  • 资源 (1)
  • 收藏
  • 关注

原创 43 能不能结合java内存模型来聊聊volatile关键字的原理?

目录1、面试题2、面试官心里分析3、面试题3.1 操作系统内存模型3.2 java内存模型3.3 volatile的作用3.4 volatile的使用场景1、面试题java的内存模型是什么?能结合内存模型说一下volatile的工作原理吗?指令重排序,内存栅栏,happen-before等概念是指的什么意思?2、面试官心里分析我作为面试官的话,也是经常问...

2019-01-29 18:34:32 336

原创 42 你能聊聊CAS一般怎么用以及CAS工作原理是啥?

 1、面试题java里玩儿悲观锁和乐观锁一般怎么玩儿?synchronized相当于是悲观锁,CAS相当于是乐观锁。知道CAS是什么吗?CAS是如何实现的?2、面试官心里分析这个高级点的面试,肯定会问CAS,还是比较重要的3、面试题剖析悲观锁:我现在要操作一个共享数据,我很悲观,我认为我操作的过程中,一定会被人给修改,会导致数据错误;我在操作这个数据之前,先给这个数据加了一...

2019-01-29 14:53:59 381

原创 41 mysql调优的方案

1.一般应急调优的思路:针对突然的业务办理卡顿,无法进行正常的业务处理!需要立马解决的场景!1、show processlistSHOW PROCESSLIST显示哪些线程正在运行show processlist 详细介绍2、查看执行计划 查看索引3、通过执行计划判断,索引问题(有没有、合不合理)或者语句本身问题4、show status  like '%lock%'...

2019-01-28 14:59:04 264

原创 40 分布式系统中的接口调用如何保证顺序性?

目录1、面试题2、面试官心里分析3、面试题剖析1、面试题分布式服务接口请求的顺序性如何保证?2、面试官心里分析其实分布式系统接口的调用顺序,也是个问题,一般来说是不用保证顺序的。但是有的时候可能确实是需要严格的顺序保证。给大家举个例子,你服务A调用服务B,先插入再删除。好,结果俩请求过去了,落在不同机器上,可能插入请求因为某些原因执行慢了一些,导致删除请求先执行了,此时...

2019-01-20 10:54:53 696

原创 39 分布式系统中接口的幂等性该如何保证?比如不能重复扣款?

 1、面试题分布式服务接口的幂等性如何设计(比如不能重复扣款)?2、面试官心里分析从这个问题开始,面试官就已经进入了实际的生产问题的面试了一个分布式系统中的某个接口,要保证幂等性,该如何保证?这个事儿其实是你做分布式系统的时候必须要考虑的一个生产环境的技术问题。啥意思呢?你看,假如你有个服务提供一个接口,结果这服务部署在了5台机器上,接着有个接口就是付款接口。然后人家用户...

2019-01-19 23:14:02 424

原创 38 基于dubbo如何做服务治理、服务降级以及重试?

目录 1、面试题2、面试官心里分析3、面试题剖析(1)服务治理(2)服务降级(3)失败重试和超时重试1、面试题如何基于dubbo进行服务治理、服务降级、失败重试以及超时重试?2、面试官心里分析服务治理,这个问题如果问你,其实就是看看你有没有服务治理的思想,因为这个是做过复杂微服务的人肯定会遇到的一个问题。服务降级,这个是涉及到复杂分布式系统中必备的一...

2019-01-19 23:07:40 240

原创 37 SPI是啥思想?dubbo的SPI机制是怎么玩儿的?

目录1、面试题2、面试官心里分析3、面试题剖析1、面试题dubbo的spi思想是什么?2、面试官心里分析继续深入问呗,前面一些基础性的东西问完了,确定你应该都ok了解dubbo的一些基本东西,那么问个稍微难一点点的问题,就是spi,先问问你spi是啥?然后问问你dubbo的spi是怎么实现的?其实就是看看你对dubbo的掌握如何3、面试题剖析spi,简单来说...

2019-01-19 22:59:33 818

原创 java编程思想随笔小计

1. 接口1.接口可以用于多继承,只需要用逗号将接口名一一分隔开即可。2.再打算组合的不同接口中使用相同的方法名通常会造成代码可读性的混。请避免这种情况。3.接口中的域默认都是static和final的。  ...

2019-01-19 22:34:46 119

原创 36 dubbo支持哪些负载均衡、高可用以及动态代理的策略?

目录1、面试题2、面试官心里分析3、面试题剖析(1)dubbo负载均衡策略(2)dubbo集群容错策略(3)dubbo动态代理策略1、面试题dubbo负载均衡策略和集群容错策略都有哪些?动态代理策略呢?2、面试官心里分析继续深问吧,这些都是用dubbo必须知道的一些东西,你得知道基本原理,知道序列化是什么协议,还得知道具体用dubbo的时候,如何负载均衡,如...

2019-01-19 22:30:04 361

原创 35 dubbo都支持哪些通信协议以及序列化协议?

 1、面试题dubbo支持哪些通信协议?支持哪些序列化协议?2、面试官心里分析上一个问题,说说dubbo的基本工作原理,那是你必须知道的,至少知道dubbo分成哪些层,然后平时怎么发起rpc请求的,注册、发现、调用,这些是基本的。接着就可以针对底层进行深入的问问了,比如第一步就可以先问问序列化协议这块,就是平时rpc的时候怎么走的?3、面试题剖析(1)dubbo支持不同...

2019-01-19 22:11:38 312

原创 34 dubbo的工作原理是啥?注册中心挂了可以继续通信吗?

目录1、面试题2、面试官心里分析3、面试题剖析1、面试题说一下的dubbo的工作原理?注册中心挂了可以继续通信吗?说说一次rpc请求的流程?2、面试官心里分析MQ、ES、Redis、Dubbo,上来先问你一些思考的问题,原理(kafka高可用架构原理、es分布式架构原理、redis线程模型原理、Dubbo工作原理),生产环境里可能会碰到的一些问题(每种技术引入之后生产环...

2019-01-19 21:42:18 404

原创 33 体验一下面试官可能会对分布式系统发起的一串连环炮

目录1.1 为什么要进行系统拆分?1.2 分布式服务框架1.3 分布式锁1.4 分布式事务1.5 分布式会话我之前有一些同学,之前呢主要是做传统行业,外包项目,互联网公司,一直是那种小的公司,技术一直都搞的比较简单。共同的一个问题,就是都没怎么搞过分布式系统,现在互联网公司,一般都是做分布式的系统,大家都不是做底层的分布式系统,分布式存储系统,hadoop hdfs,分布式...

2019-01-19 21:37:49 266

原创 31 你能说说redis的并发竞争问题该如何解决吗?

 1、面试题redis的并发竞争问题是什么?如何解决这个问题?了解Redis事务的CAS方案吗?2、面试官心里分析这个也是线上非常常见的一个问题,就是多客户端同时并发写一个key,可能本来应该先到的数据后到了,导致数据版本错了。或者是多客户端同时获取一个key,修改值之后再写回去,只要顺序错了,数据就错了。而且redis自己就有天然解决这个问题的CAS类的乐观锁方案  ...

2019-01-19 21:28:01 948

原创 30 高并发场景下的缓存+数据库双写不一致问题分析与解决方案设计

马上开始去开发业务系统从哪一步开始做,从比较简单的那一块开始做,实时性要求比较高的那块数据的缓存去做实时性比较高的数据缓存,选择的就是库存的服务库存可能会修改,每次修改都要去更新这个缓存数据; 每次库存的数据,在缓存中一旦过期,或者是被清理掉了,前端的nginx服务都会发送请求给库存服务,去获取相应的数据库存这一块,写数据库的时候,直接更新redis缓存实际上没有这么的简单,...

2019-01-18 12:03:50 225

原创 29 你能说说我们一般如何应对缓存雪崩以及穿透问题吗?

 1、面试题了解什么是redis的雪崩和穿透?redis崩溃之后会怎么样?系统该如何应对这种情况?如何处理redis的穿透?如何解决雪崩问题 2、面试官心里分析其实这是问到缓存必问的,因为缓存雪崩和穿透,那是缓存最大的两个问题,要么不出现,一旦出现就是致命性的问题。所以面试官一定会问你。3、面试题剖析缓存雪崩发生的现象缓存雪崩的事前事中事后的解决方案...

2019-01-18 11:32:38 307

原创 mysql索引类型Normal,Unique,Full Text区别及索引方法Btree,Hash的区别

mysql索引类型Normal,Unique,Full Text区别Normal:表示普通索引,大多数情况下都可以使用Unique:约束唯一标识数据库表中的每一条记录,即在单表中不能用每条记录是唯一的(例如身份证就是唯一的),Unique(要求列唯一)和Primary Key(primary key = unique + not null 列唯一)约束均为列或列集合中提供了唯一性的保证,P...

2019-01-18 10:48:01 255

原创 28 redis cluster的核心原理分析:gossip通信、jedis smart定位、主备切换

目录一、节点间的内部通信机制2、gossip协议3、ping消息深入二、面向集群的jedis内部实现原理1、基于重定向的客户端2、smart jedis三、高可用性与主备切换原理1、判断节点宕机2、从节点过滤3、从节点选举4、与哨兵比较一、节点间的内部通信机制1、基础通信原理(1)redis cluster节点间采取gossip协议进行通信...

2019-01-17 16:06:51 165

原创 27 数据分布算法:hash+一致性hash+redis cluster的hash slot

讲解分布式数据存储的核心算法,数据分布的算法hash算法 -> 一致性hash算法(memcached) -> redis cluster,hash slot算法用不同的算法,就决定了在多个master节点的时候,数据如何分布到这些节点上去,解决这个问题1、redis cluster介绍redis cluster(1)自动将数据进行分片,每个master上放一部分...

2019-01-17 15:58:24 194

原创 26 redis如何在保持读写分离+高可用的架构下,还能横向扩容支撑1T+海量数据

1、单机redis在海量数据面前的瓶颈2、怎么才能够突破单机瓶颈,让redis支撑海量数据?3、redis的集群架构redis cluster支撑N个redis master node,每个master node都可以挂载多个slave node读写分离的架构,对于每个master来说,写就写到master,然后读就从mater对应的slave去读高可用,因为每个mast...

2019-01-17 15:56:40 196

原创 25 图解分析redis的RDB和AOF两种持久化机制的工作原理

目录1、RDB和AOF两种持久化机制的介绍2、RDB持久化机制的优点3、RDB持久化机制的缺点4、AOF持久化机制的优点5、AOF持久化机制的缺点6、RDB和AOF到底该如何选择我们已经知道对于一个企业级的redis架构来说,持久化是不可减少的企业级redis集群架构:海量数据、高并发、高可用持久化主要是做灾难恢复,数据恢复,也可以归类到高可用的一个环节里面去...

2019-01-17 15:51:08 230

原创 24 redis哨兵的多个核心底层原理的深入解析(包含slave选举算法)

目录1、sdown和odown转换机制2、哨兵集群的自动发现机制3、slave配置的自动纠正4、slave->master选举算法5、quorum和majority6、configuration epoch7、configuraiton传播1、sdown和odown转换机制sdown和odown两种失败状态sdown是主观宕机,就一个哨兵如果自己觉得一...

2019-01-17 15:00:40 432

原创 23 redis哨兵主备切换的数据丢失问题:异步复制、集群脑裂

目录1、两种数据丢失的情况2、解决异步复制和脑裂导致的数据丢失------------------------------------------------------------------1、两种数据丢失的情况主备切换的过程,可能会导致数据丢失(1)异步复制导致的数据丢失因为master -> slave的复制是异步的,所以可能有部分数据还没复制到slave...

2019-01-17 14:06:07 205

原创 22 redis哨兵架构的相关基础知识的讲解

目录1、哨兵的介绍2、哨兵的核心知识3、为什么redis哨兵集群只有2个节点无法正常工作?4、经典的3节点哨兵集群1、哨兵的介绍sentinal,中文名是哨兵哨兵是redis集群架构中非常重要的一个组件,主要功能如下(1)集群监控,负责监控redis master和slave进程是否正常工作(2)消息通知,如果某个redis实例有故障,那么哨兵负责发送消息作为报警...

2019-01-16 20:50:21 177

原创 21 redis replication的完整流运行程和原理的再次深入剖析

目录1、复制的完整流程2、数据同步相关的核心机制3、全量复制4、增量复制5、heartbeat6、异步复制1、复制的完整流程(1)slave node启动,仅仅保存master node的信息,包括master node的host和ip,但是复制流程没开始master host和ip是从哪儿来的,redis.conf里面的slaveof配置的(2)slave...

2019-01-16 20:48:13 173

原创 20 redis主从复制原理、断点续传、无磁盘化复制、过期key处理

目录1、主从架构的核心原理2、主从复制的断点续传3、无磁盘化复制4、过期key处理1、主从架构的核心原理当启动一个slave node的时候,它会发送一个PSYNC命令给master node如果这是slave node重新连接master node,那么master node仅仅会复制给slave部分缺少的数据; 否则如果是slave node第一次连接master ...

2019-01-16 20:46:42 182

原创 19 redis replication以及master持久化对主从架构的安全意义

目录1、图解redis replication基本原理2、redis replication的核心机制3、master持久化对于主从架构的安全保障的意义 ------------------------------------------------------------------------1、图解redis replication基本原理 -------...

2019-01-16 20:45:35 226

原创 18 redis如何通过读写分离来承载读请求QPS超过10万+?

目录1、redis高并发跟整个系统的高并发之间的关系2、redis不能支撑高并发的瓶颈在哪里?3、如果redis要支撑超过10万+的并发,那应该怎么做?4、接下来要讲解的一个topic1、redis高并发跟整个系统的高并发之间的关系redis,你要搞高并发的话,不可避免,要把底层的缓存搞得很好mysql,高并发,做到了,那么也是通过一系列复杂的分库分表,订单系统,事务要...

2019-01-16 20:43:21 1095

原创 17 redis的过期策略能介绍一下?要不你再手写一个LRU?

目录1、面试题2、面试官心里分析3、面试题剖析(2)内存淘汰1、面试题redis的过期策略都有哪些?内存淘汰机制都有哪些?手写一下LRU代码实现?2、面试官心里分析1)老师啊,我往redis里写的数据怎么没了?之前有同学问过我,说我们生产环境的redis怎么经常会丢掉一些数据?写进去了,过一会儿可能就没了。我的天,同学,你问这个问题就说明redis你就没用对啊。...

2019-01-15 19:21:50 812

原创 16 redis都有哪些数据类型?分别在哪些场景下使用比较合适呢?

目录1、面试题2、面试官心里分析3、面试题剖析1、面试题redis都有哪些数据类型?分别在哪些场景下使用比较合适?2、面试官心里分析除非是我感觉看你简历,就是工作3年以内的比较初级的一个同学,可能对技术没有很深入的研究过,我才会问这类问题,在宝贵的面试时间里,我实在是不想多问其实问这个问题呢。。。主要就俩原因第一,看看你到底有没有全面的了解redis有哪些功能,...

2019-01-15 19:05:02 578

原创 15 聊聊redis的线程模型吧?为啥单线程还能有很高的效率?

目录1、面试题2、面试官心里分析3、额外的友情提示4、面试题剖析(1)redis和memcached有啥区别(2)redis的线程模型(3)为啥redis单线程模型也能效率这么高?1、面试题redis和memcached有什么区别?redis的线程模型是什么?为什么单线程的redis比多线程的memcached效率要高得多(为什么redis是单线程的但是还可以支...

2019-01-15 17:20:07 1061

原创 14 先平易近人的随口问你一句分布式缓存的第一个问题

 1、面试题在项目中缓存是如何使用的?缓存如果使用不当会造成什么后果?2、面试官心里分析这个问题,互联网公司必问,要是一个人连缓存都不太清楚,那确实比较尴尬只要问到缓存,上来第一个问题,肯定能是先问问你项目哪里用了缓存?为啥要用?不用行不行?如果用了以后可能会有什么不良的后果?这就是看看你对你用缓存这个东西背后,有没有思考,如果你就是傻乎乎的瞎用,没法给面试官一个合理的解答...

2019-01-15 16:51:12 231

原创 13 你们公司生产环境的分布式搜索引擎是怎么部署的呢?

目录1、面试题2、面试官心里分析3、面试题剖析1、面试题es生产集群的部署架构是什么?每个索引的数据量大概有多少?每个索引大概有多少个分片?2、面试官心里分析这个问题,包括后面的redis什么的,谈到es、redis、mysql分库分表等等技术,面试必问!就是你生产环境咋部署的?说白了,这个问题没啥技术含量,就是看你有没有在真正的生产环境里干过这事儿!有些同学可能是...

2019-01-12 12:47:42 222

原创 12 分布式搜索引擎在几十亿数据量级的场景下如何优化查询性能?

目录1、面试题2、面试官心里分析3、面试题剖析(1)性能优化的杀手锏——filesystem cache(2)数据预热(3)冷热分离(4)document模型设计(5)分页性能优化1、面试题es在数据量很大的情况下(数十亿级别)如何提高查询效率啊?2、面试官心里分析问这个问题,是肯定的,说白了,就是看你有没有实际干过es,因为啥?es说白了其实性能并...

2019-01-12 12:44:58 628

原创 11 分布式搜索引擎写入和查询的工作流程是什么样的?

目录1、面试题2、面试官心理分析3、面试题剖析(1)es写数据过程(2)es读数据过程(3)es搜索数据过程(4)搜索的底层原理,倒排索引,画图说明传统数据库和倒排索引的区别(5)写数据底层原理1、面试题es写入数据的工作原理是什么啊?es查询数据的工作原理是什么啊?2、面试官心理分析问这个,其实面试官就是要看看你了解不了解es的一些基本原理,因为用...

2019-01-11 16:14:25 212

原创 10 分布式搜索引擎的架构是怎么设计的?为啥是分布式的?

目录1、面试题2、面试官心里分析3、额外的友情提示4、面试题剖析1、面试题es的分布式架构原理能说一下么(es是如何实现分布式的啊)?2、面试官心里分析在搜索这块,lucene是最流行的搜索库。几年前业内一般都问,你了解lucene吗?你知道倒排索引的原理吗?现在早已经out了,因为现在很多项目都是直接用基于lucene的分布式搜索引擎——elasticsearch...

2019-01-11 15:47:23 439

原创 09 体验一下面试官对于分布式搜索引擎的4个连环炮

业内目前来说事实上的一个标准,就是分布式搜索引擎一般大家都用elasticsearch,es,solr,但是确实,这两年大家一般都用更加易用的es。lucene如果你确实真的不连lucene都不知道是什么?我觉得你确实不应该,lucene底层的原理是一个东西,叫做倒排索引。太基础了。百度,搜索一下lucene入门,了解一下lucene是什么?倒排索引是什么?全文检索是什么?写个luce...

2019-01-11 14:54:47 204

原创 08 如果让你来开发一个消息队列中间件,你会怎么设计架构?

目录 1、面试题2、面试官心里分析3、面试题剖析1、面试题如果让你写一个消息队列,该如何进行架构设计啊?说一下你的思路2、面试官心里分析其实聊到这个问题,一般面试官要考察两块:(1)你有没有对某一个消息队列做过较为深入的原理的了解,或者从整体了解把握住一个mq的架构原理(2)看看你的设计能力,给你一个常见的系统,就是消息队列系统,看看你能不能从全局把握一下整...

2019-01-11 14:19:37 402

原创 07 几百万消息在消息队列里积压了几个小时如何解决?

目录 1、面试题2、面试官心里分析3、面试题分析(1)大量消息在mq里积压了几个小时了还没解决(2)这里我们假设再来第二个坑(3)然后我们再来假设第三个坑1、面试题如何解决消息队列的延时以及过期失效问题?消息队列满了以后该怎么处理?有几百万消息持续积压几小时,说说怎么解决?2、面试官心里分析你看这问法,其实本质针对的场景,都是说,可能你的消费端出了问题,...

2019-01-11 14:14:06 2920

原创 06 我该怎么保证从消息队列里拿到的数据按顺序执行?

目录1、面试题2、面试官心里分析3、面试题剖析1、面试题如何保证消息的顺序性?2、面试官心里分析其实这个也是用MQ的时候必问的话题,第一看看你了解不了解顺序这个事儿?第二看看你有没有办法保证消息是有顺序的?这个生产系统中常见的问题。3、面试题剖析我举个例子,我们以前做过一个mysql binlog+同步的系统,压力还是非常大的,日同步数据要达到上亿。mysql ...

2019-01-10 18:01:22 1836 1

原创 05 我发到消息队列里面的数据怎么不见了?

目录1、面试题2、面试官心里分析3、面试题剖析(1)rabbitmq(2)kafka1、面试题如何保证消息的可靠性传输(如何处理消息丢失的问题)?2、面试官心里分析这个是肯定的,用mq有个基本原则,就是数据不能多一条,也不能少一条,不能多,就是刚才说的重复消费和幂等性问题。不能少,就是说这数据别搞丢了。那这个问题你必须得考虑一下。如果说你这个是用mq来传递非...

2019-01-10 16:57:30 485 2

尚硅谷Java视频教程_SpringCloud视频教程

本套视频从面试题,到SpringCloud各种核心组件,到最终的微服务架构总结,帮助大家快速入门、上手并精通微服务框架SpringCloud。 课程中对比了 Dubbo 和 SpringCloud,并深入讲授SpringCloud核心组件Eureka、Ribbon、Feign、Hystrix、HystrixDashboard、Zuul、Config。除此之外,还通过整合SpringMVC+SpringBoot+Mybatis构建一个可用的基于SpringCloud的微服务工程将上述技术组件逐步落地,让大家看得懂做得出学得会。

2018-05-29

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除