
面试 [279]
ThreadLocal真的会造成内存泄漏吗?
ThreadLoca在并发场景中,应用非常多。那ThreadLocal是不是真的会造成内存泄漏?今天给大家做一个分享,个人见解,仅供参考。 1、ThreadLocal的基本原理 简单介绍一下ThreadLocal,在多线程并发访问同一个共享变量的情况下,如果不做同步控制的话,就可能会导致数据不一致的
面试题:Java中的引用类型有哪几种?特点是什么?
Java中引用类型及特点 强 引用: 最普通的引用 Object o = new Object() 软 引用: 垃圾回收器, 内存不够的时候回收 (缓存) 弱 引用: 垃圾回收器看见就会回收 (防止内存泄漏) 虚 引用: 垃圾回收器看见二话不说就回收,跟没有一样 (管理堆外内存) DirectByt
面试官:请说一下Mysql事务实现原理
在日常工作中,数据库是我们必须使用的,其中使用最多的也是大部分中小公司的选择是Mysql,跳槽面试中也是必问的,今天我们就说一下Mysql事务 MySQL中的事务实现原理主要涉及以下几个方面: ACID特性:MySQL支持事务的原因之一是它遵循ACID(原子性、一致性、隔离性和持久性)特性。这意味着
面试官:请列举 Spring 的事务会失效的场景
在日常工作中,如果对 Spring 的事务管理功能使用不当,则会造成 Spring 事务不生效的问题。而针对 Spring 事务不生效的问题,也是在跳槽面试中被问的比较频繁的一个问题。 今天,我们就一起梳理下有哪些场景会导致 Spring 事务失效。 Spring 事务失效的8中场景 下面就举例说明
二叉树面试题
001 树的相关术语。 树:树是由根节点和若干颗子树构成的。树是由一个集合以及在该集合上定义的一种关系构成的。集合中的元素称为树的节点,所定义的关系称为父子关系。 二叉树:树是由根节点和若干子树构成的。每个节点最多含有两个子树的树称为二叉树。 度:一个结点含有的子树的个数 叶子节点或终端节点:度为0
线性表面试题
001 什么是链表? 链表是一种动态的数据结构,因为在创建链表时,我们不需要知道链表的长度,当插入一个结点时,只需要为该结点分配内存,然后调整指针的指向来确保新结点被连接到链表中。所以,它不像数组,内存是一次性分配完毕的,而是每添加一个结点分配一次内存。正是因为这点,所以它没有闲置的内存,比起数组,
排序面试题
001 什么是冒泡排序? 冒泡排序是在遍历数组的过程中,每次都要比较连续相邻的元素,如果某一对相邻元素是降序(即前面的数大于后面的数),则互换它们的值,否则,保持不变。由于较大的值像“气泡”一样逐渐浮出顶部,而较小的值沉向底部,所以叫冒泡排序。 002 冒泡排序的代码实现? 具体实现参考如下源代码
Redis面试题
001 概述一下你认识的Redis? Redis本质上是一个Key-Value类型的内存数据库,很像memcached,整个数据库统统加载 在内存当中进行操作,定期通过异步操作把数据库数据flush到硬盘上进行保存。 因为是纯内存操作,Redis的性能非常出色,每秒可以处理超过 10万次读写操作,是
MySQL EXPLAIN解读
• explain用法
explain SELECT * FROM halo.extensions WHERE name = '/registry/menus/primary';
• 输出结果含义 id:表示查询语句中的每个步骤的唯一标识符。 select_type:表示查询的类型,常见的类型包括
导致MySQL索引失效的几种常见写法
单个索引 使用!=或者<>导致索引失效 SELECT * FROM user WHERE name != '冰峰'; 给name字段建立了索引,但是如果!= 或者 <> 这种都会导致索引失效。 通过分析SQL看到,type类型是ALL,进行全表扫描,所以如果数据量大的话,谨慎使用 类型不一致导致索引
常见限流算法介绍
生活中的遇到哪些突发流量? 双11、618大促 电商秒杀活动 微博突发新闻 …… 限流是什么? 通常我们说的限流指的是限制达到系统的并发请求数 ,使得系统能够正常的处理部分请求,来保证系统的稳定性。 限流也称为流控(流量控制)。</
Kafka客户端使用规范
consumer使用规范 • consumer的owner线程需确保不会异常退出,避免客户端无法发起消费请求,阻塞消费。
• 确保处理完消息后再做消息commit,避免业务消息处理失败,无法重新拉取处理失败的消息。
• 通常不建议对每条消息都进行commit,如果对每条消息都进行了commit,会导
kafka客户端参数配置建议
方文档:https://kafka.apache.org/documentation/#configuration Producer参数 Consumer参数
Redis数据结构详解
Redis 共有 5 种基本数据类型:String(字符串)、List(列表)、Set(集合)、Hash(散列)、Zset(有序集合)。 这 5 种数据类型是直接提供给用户使用的,是数据的保存形式,其底层实现主要依赖这 8 种数据结构:简单动态字符串(SDS)、LinkedList(双向链表)、Di
Dubbo常见知识点&面试题总结
::: tip Dubbo3 已经发布,这篇文章是基于 Dubbo2 写的。Dubbo3 基于 Dubbo2 演进而来,在保持原有核心功能特性的同时, Dubbo3 在易用性、超大规模微服务实践、云原生基础设施适配、安全设计等几大方向上进行了全面升级。 本文中的很多链接已经失效,主要原因是因为 Du
Spring&Spring Boot 常用注解总结
0.前言 可以毫不夸张地说,这篇文章介绍的 Spring/SpringBoot 常用注解基本已经涵盖你工作中遇到的大部分常用的场景。对于每一个注解我都说了具体用法,掌握搞懂,使用 SpringBoot 来开发项目基本没啥大问题了! 为什么要写这篇文章? 最近看到网上有一篇关于 SpringBoot
SpringCloudGateway常见问题总结
本文重构完善自6000 字 | 16 图 | 深入理解 Spring Cloud Gateway 的原理 - 悟空聊架构这篇文章。 本文转载来自JavaGuide ,如有侵权及时联系。 什么是 Spring Cloud Gateway? Spring Cloud Gateway 属于 Spring
MongoDB常见面试题总结
MongoDB 基础 MongoDB 是什么? MongoDB 是一个基于 分布式文件存储 的开源 NoSQL 数据库系统,由 C++ 编写的。MongoDB 提供了 面向文档 的存储方式,操作起来比较简单和容易,支持“无模式”的数据建模,可以存储比较复杂的数据类型,是一款非常流行的 文档类型数据库