3.6 KiB
3.6 KiB
岗位匹配度:
- 扎实的Java编程能力,熟悉分布式、多线程及高性能的设计与编码及性能调优。
- 如何将一个 GBK 编码的字符串转为 UTF-8 编码的字符串。
- 多个线程间共享变量有哪些方式?
- volatile变量:保证可见性,不保证原子性
- synchronized方法/代码块:保证原子性和可见性
- ReentrantLock等显式锁:更灵活,支持公平锁、条件变量
- Atomic原子类:
AtomicInteger,AtomicReference等 - ThreadLocal:线程本地变量,每个线程独立副本
- 阻塞队列:
BlockingQueue,生产者-消费者模式 - 并发容器:
ConcurrentHashMap,CopyOnWriteArrayList等 - CountDownLatch/CyclicBarrier:线程间协调
- volatile + CAS:无锁编程模式
- 如何分析 Maven 依赖冲突。
- mvn dependency:tree
- mvn dependency:analyze
- 使用
<exclusions>排除不需要的传递依赖
- 精通Spring、SpringBoot/SpringCloud、Mybatis等主流开源框架。
- 熟练使用关系型数据库(Oracle、MySQL),了解Redis、MongoDB等非关系型数据库。国产数据库。
- 如何分析一个 sql 是否使用了索引进行加速。EXPLAIN type 有哪些类型。ALL
- 前台界面需要拖拽排序,后台接口和数据库如何实现。
- 有一张打卡记录表,如何查找连续两天漏打卡的人。查找连续两天漏打卡的人
- 掌握 TCP/IP 通信协议相关知识,熟练进行 Socket 网络编程。
- 一个TCP 报文有多长,有效的数据长度有多少?如果发送的数据很长会怎么处理。发送的数据都很短会怎么处理。
- 最大报文段长度(MSS):通常1460字节(1500 MTU - 20 IP头 - 20 TCP头)
- 有效数据长度:可变,最大约1460字节
- 最小报文长度:纯ACK包约40字节(只有头部)
- 一个 Http Get 请求数据量,Post 请求数据量1M。
- RFC 标准未规定上限
- IE浏览器:2083字符
- Chrome/Edge:~32K字符
- Apache服务器:默认8190字节
- Nginx:默认1K,可配置到8K
- 一个TCP 报文有多长,有效的数据长度有多少?如果发送的数据很长会怎么处理。发送的数据都很短会怎么处理。
- 熟悉 JNI 开发。
- String 类型传递给 C 用什么类型,结尾字符如何处理?
- C 代码中如何调用 java 内的函数,java 中抛出异常,C 中如何处理。
- 云架构体系以及微服务
- docker 的基本操作,在 docker 内如何做监控。
- 密码学相关背景知识
-
pkcs10 标准的主要内容是什么,证书请求和证书的主要内容是什么?
- 证书请求信息:版本、主题、公钥、属性
- 签名算法标识符:如sha256WithRSAEncryption
- 数字签名:用私钥对请求信息签名
-
用户的口令在数据库中应该如何存储?
-
- 解决问题能力、持续主动学习能力,文档能力、团队合作能力。
- 线上环境偶发问题有什么排查思路?
- 概要设计文档应该包含哪些必要内容 项目管理文档编写
- git (log、stash、worktree)
Python 面试:
- Python Socket 客户端如何设置链接超时时间和通信超时时间。
- 如何将项目打包为 whl ,可以让别人通过 pip 安装和管理。如何把包内的方法暴露出来。venv 环境管理。
- Python中的GIL(全局解释器锁)是什么?它对多线程编程有什么影响?在什么情况下应该使用多进程而不是多线程?Python GIL 锁
- Python 调用 C 代码、动态库。二级指针。
- Python 性能分析。火焰图。
- Python 编写测试脚本。AI 调用。未来规划。已经做了哪些。