
面试
文章平均质量分 88
xy294636185
交流加qq294636185,通信工程向,熟悉c,c++,linux系统编程,网络编程,数据库等。
展开
-
java面试(缓存Redis)
击穿:redis中没有查询到数据。解决:设置热点数据永不过期。加载DB时防止并发。穿透:redis和mysql中都没有查询到数据。解决:参数校验,将没有数据的情况也存入redis中,引入布隆过滤器雪崩:redis中大量数据同时过期。解决:设置不同的过期时间。如果判断一个元素不在集合中则一定不在如果判断一个元素在集合中则存在一定误判率布隆过滤器只能加数据不能减数据。原创 2024-03-05 22:14:40 · 1453 阅读 · 1 评论 -
java面试(消息队列MQ)
MQ(MessageQueue)消息队列。队列(FIFO)先进先出的数据结构,消息由生产者发送到MQ,后由消费者对消息进行处理。QQ,微信就是MQ场景。原创 2024-03-05 15:59:02 · 1176 阅读 · 0 评论 -
java面试(jvm)
有两种垃圾回收机制:1.引用计数:这种方式是给堆内存当中的每个对象记录一个引用计数,引用个数为0的就认为是垃圾。问题是无法解决循环引用的问题,会造成内存泄漏。2.根可达算法:内存中从引用根对象向下一直找引用,找不到的对象就是垃圾,可解决循环引用。GC Root:Stack(JVM Stack,Native Stack),class类,run-time constant pool常量池,static reference静态变量。原创 2024-03-04 23:13:47 · 1019 阅读 · 0 评论 -
java面试(网络)
文件描述符(FD):形式上是整数,实际上是索引,指向内核为每个进程维护进程所打开的文件记录表,当程序打开/创建一个文件时,内核就会向i昵称返回一个FD。epoll:事件驱动,不再扫描所有的fd,只将用户关心(读写)的fd事件存放在内核的事件表中,这样减少了从用户到内核的拷贝数据。AIO:异步非阻塞IO:可靠性好,吞吐量高,适用于连接多,且连接长操作,例如相册服务器,视频流,JDK1.7+广播,协议简单,占用资源少,效率高。1.HTTP:连接简单,无状态,HTTPS:传输经过证书加密,安全性高。原创 2024-02-25 22:14:45 · 1106 阅读 · 0 评论 -
java面试(并发)
思路:fork/join框架,实例:https://blog.youkuaiyun.com/qq_40100414/article/details/119202893;扩展jvm底层参数:-XX:UsedBiasedLocking:是否打开偏向锁,默认不打开 -XX:BiasedLockingStartupDelay:默认4s,打开。1.AQS是java线程同步的框架,是jdk中很多锁的核心实现框架。1.volatile:保持变量的内存(线程)可见性,避免编译器优化,适用于一个线程写,一个读的场景。原创 2024-02-25 14:39:46 · 631 阅读 · 0 评论