面试总结(mysql定精度/oom排查/spring三级缓存/stream流)

Mysql数据类型上的一个把握

1、MySQL Decimal为什么不会丢失精度

DECIMAL的存储方式和其他数据类型都不同,它是以字符串形式存储的。假设一个字段为DECIMAL(3,0),当我们存入100时,实际上存入的1、0、0这三个字符拼接而成的字符串的二进制值,由于一个数字字符占用1个字节,所以共占用三个字节的空间。然后还要存入描述该数据的元数据,元数据固定占用2个字节,所以共占用5个字节。

总结:DECIMAL(M,N)会占用(M+2)个字节。

2、websocket和http的联系

WebSocket和HTTP都是应用层协议,用于在客户端和服务器之间进行通信。它们之间有一些联系和区别:

  1. 基于TCP:WebSocket和HTTP都是基于TCP协议的。HTTP通过短暂的请求-响应方式进行通信,每次请求都需要建立一个新的TCP连接。而WebSocket在建立连接后,可以保持持久的双向通信连接,避免了频繁建立和关闭TCP连接的开销。

  2. 握手过程:HTTP使用无状态的请求-响应模型,每次请求都需要进行完整的握手过程。而WebSocket在建立连接时进行一次握手过程,之后可以保持连接,并实现双向通信。

  3. 数据格式:HTTP协议通常使用JSON、XML等格式来传输数据,而WebSocket可以传输任意格式的数据,包括文本和二进制数据。

  4. 请求-响应 VS 实时双向通信:HTTP协议是一种请求-响应协议,客户端发送请求,服务器返回响应。而WebSocket提供了实时的双向通信能力,客户端和服务器可以在同一个连接上进行双向数据交换。

  5. 端口:HTTP协议默认使用80端口进行通信,而WebSocket默认使用的端口是443(加密)或80(非加密)。

3、websocket建立连接的过程

4、Spring事务

5、JVM排查OOM

6、Java8新特性的stream

7、spring的三级缓存

相关推荐
没有羊的王K5 分钟前
SSM框架学习DI入门——day2
java·spring boot·学习
公子绝6 分钟前
JAVA学习笔记 使用notepad++开发JAVA-003
java·学习·notepad++·java开发环境
似璟如你14 分钟前
Java开发八股文之基础篇+spring+集合
java·开发语言·面试
本杰明15215 分钟前
2025/7/14——java学习总结
java·开发语言·学习
星释26 分钟前
优雅的Java:01.数据更新如何更优雅
java·开发语言·spring boot
LeonYangRyeon28 分钟前
解锁SQL“密码”:SELECT DISTINCT END AS的深度剖析与实战指南
java·开发语言
7 9737 分钟前
C语言基础知识--文件的顺序读写与随机读写
java·数据结构·算法
梁同学与Android2 小时前
Android ---【内存优化】常见的内存泄露以及解决方案
android·java·内存泄漏
武子康4 小时前
Java-71 深入浅出 RPC Dubbo 上手 父工程配置编写 附详细POM与代码
java·分布式·程序人生·spring·微服务·rpc·dubbo
武子康6 小时前
Java-72 深入浅出 RPC Dubbo 上手 生产者模块详解
java·spring boot·分布式·后端·rpc·dubbo·nio