自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(10)
  • 收藏
  • 关注

原创 mysql数据库面试

1、mysql的引擎最常见的MyISAM 和 InnoDB2、线上的一些问题主从延迟问题、模糊匹配问题、全表扫描问题3、MyISAM 和 InnoDB 的区别是否支持行级锁MyISAM 只有表级锁(table-level locking),而 InnoDB 支持行级锁(row-level locking)和表级锁,默认为行级锁。是否支持事务MyISAM 不提供事务支持。InnoDB 提供事务支持,具有提交(commit)和回滚(rollback)事务的能力。InnoDB支持 MVCC索引

2022-03-07 01:12:03 194

原创 计算机网络相关

TCP 如 何 保 证 可 靠 传 输 ?1、链接前进行三次握手2、应用数据被分割成 TCP 认为最适合发送的数据块(按字节编号,合理分片)。这和 UDP 完 全不同,应用程序产生的数据报长度将保持不变。 (将数据截断为合理的长度)3、当 TCP 发出一个段后,它启动一个定时器,等待目的端确认收到这个报文段。如果不 能及时收到一个确认,将重发这个报文段。(超时重发)4、当 TCP 收到发自 TCP 连接另一端的数据,它将发送一个确认。这个确认不是立即发送, 通常将推迟几分之一秒 。(对于收到的请求,

2022-03-06 23:02:52 120

原创 Synchronized和lock

Synchronized和lock的区别第一个实现方式上:Synchronized是java关键字,在jvm上实现,lock是一个接口可重入lock实现是基于aqs抽象的队列同步器+lock接口实现的。第二个锁释放方式上:Synchronized会自己释放,lock需要自己调用unlock,所以需要写在fially中。第三个是否可中断等待:Synchronized不能等待中断只能等待其他线程释放锁,而lock可以主动中断等待。第四个是能否知道是否已获取锁,Synchronized无法知道,loc

2022-03-06 16:18:32 94

原创 MyBatis 缓存原理梳理

1、一级缓存一级缓存:当在一次数据库会话中,执行多次查询条件完全相同的SQL时,MyBatis提供了一级缓存的方案优化,如果是相同的SQL语句,会优先命中一级缓存,避免直接对数据库进行查询,提高性能。每个SqlSession中持有了Executor,每个Executor中有一个LocalCache。当用户发起查询时,MyBatis根据当前执行的语句生成MappedStatement,在Local Cache进行查询,如果缓存命中的话,直接返回结果给用户,如果缓存没有命中的话,查询数据库,结果写入Local

2022-03-06 13:10:46 557

原创 spring面试相关

bean的创建过程IoC容器的初始化1、解析XML或其他注解定义是bean配置,获取bean的BeanDefinition信息2、创建一个 BeanFactory,这里使用 DefaultListableBeanFactory。3、创建一个载入 BeanDefinition 的解读器来载入 BeanDefinition,通过一个回调配置给 BeanFactory。4、第一次向容器getBean操作会触发Bean的创建过程,实列化一个Bean时 ,根据BeanDefinition中类信息等实列化Be

2022-03-06 13:07:47 60

原创 消息队列kafka面试

Kafka 是什么?主要应用场景有哪些?流平台具有三个关键功能:消息队列、容错的持久方式存储记录消息流、流式处理平台Kafka 主要有两大应用场景:消息队列和数据处理Kafka 的消息模型队列模型发布-订阅模型发布者发布一条消息,该消息通过主题传递给所有的订阅者,在一条消息广播之后才订阅的用户则是收不到该条消息的。什么是Producer、Consumer、Broker、Topic、PartitionKafka 将生产者发布的消息发送到 Topic(主题) 中,需要这些消息的消费者可以.

2022-03-06 11:53:18 167

原创 RPC相关面试

何为 RPC?远程过程调用RPC 的原理是什么?服务消费端(client)以本地调用的方式调用远程服务;客户端 Stub(client stub) 接收到调用后负责将方法、参数等组装成能够进行网络传输的消息体(序列化):RpcRequest;客户端 Stub(client stub) 找到远程服务的地址,并将消息发送到服务提供端;服务端 Stub(桩)收到消息将消息反序列化为Java对象: RpcRequest;服务端 Stub(桩)根据RpcRequest中的类、方法、方法参数等信息..

2022-03-06 11:24:20 2632

原创 面试准备-redis

redis的数据结构String list set hash Sorted_Set. bitmapSorted_Set:相当于tree_set的功能,给每一个key有一个得分,可以按照得分排序的。比如各种排行榜。Redis 单线程模型详解Redis 通过IO 多路复用程序 来监听来自客户端的大量连接Redis 给缓存数据设置过期时间有啥用防止oomRedis 是如何判断数据是否过期的呢使用一个过期字典保存,key是业务的key,value是一个过期时间。过期的数据的删除..

2022-03-06 10:48:00 69

原创 面试经验积累

自我介绍怎么写?你好,我叫hechaopeng,18年东北林业大学计算机专业本科毕业,毕业之后加入美团工作,目前在美团工作大概3年多,主要做java开发相关的工作,只能说java基础方面还是比较扎实得,但是中间一年做的数据挖掘方面的工作,所以在大数据spark等方面也有一定的积累。但最终觉得自己还是更擅长做java开发相关的工作,后面一年又继续做java方面的工作但是是做的偏业务复杂方面的系统,目前也是想看一下外面的机会,想争取一下,找到一个更好做java的环境,所以就投了你们公司的岗位。项目介.

2022-02-22 00:23:36 396

原创 ConcurrentHashMap面试

ConcurrentHashMap是一个在并发环境情况下线程安全的容器,为了保证线程安全,在jdk1.7和jdk1.8的实现方式是不一样:在1.7中,ConcurrentHashMap采用的分段加锁,锁使用的是可重入锁,整体的数据结构就是一个数据数组的每一个元素是一个hashmap,当然hashmap1.8相对于1.7也做了升级,主要就是插入链表的元素从头插入改为尾部插入,链表元素个数大于8个则转为红黑树。回到1.7的ConcurrentHashMap,某一个线程在插入或删除一个元素的情况,只会对has

2022-02-21 00:23:23 313

空空如也

空空如也

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

TA关注的人

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