服务器更换 SSH 端口并开启 UFW + Fail2ban 防护
我们买了服务器后,最好立即修改ssh端口做好安全防护,避免被密码被暴力破解导致服务器被黑,接下来我以 Ubuntu 24 系统为例,跟着我的操作来加固服务器安全: 通过 last 命令查看登录成功日志,确认只有自己的ip登录 通过 lastb -n 30 命令可以看到很多ip在不停试错的登录失败记录
MySQL 的优化
如何调优? SQL调优是一个很大的概念,但是大致就是从索引优化、代码/业务优化、架构优化几个方向上来做: 比如最常说的索引优化: 我们可以使用覆盖索引避免回表; 然后就是尽量满足最左匹配原则,避免索引失效; 还有就是索引也不宜过多,这样写入的时候维护索引的成本就高了,也占磁盘空间,mysql选择索引
Spring 的事务
事务的特性和属性 特性:原子性、一致性、隔离性、持久性 属性:隔离性、传播性、回滚规则、是否只读、超时时间 事务传播行为有哪几种? 协同派: REQUIRED:有就加入,没有就新建(默认) SUPPORTS:有就加入,没有就算了 NESTED:有就新建子事务(子事务失败父事务不受影响,父事务失败会带
Seata分布式事务 八股文面试题
什么是CAP定理? Consistency 一致性:所有节点在同一时间看到的数据必须一致。 Availability 可用性:每个请求都能得到响应,不会出现长时间阻塞或错误。 Partition tolerance 分区容错性:当网络通信出现故障时(如网络丢包、节点之间无法连通),系统仍能继续运作。
RocketMQ 八股文面试题
发送同步消息,如果出现了异常,怎么进行可靠性保障? RocketMQ会默认进行重试(客户端内部进行的,看不见的),默认会重试2次,重试次数可以自己配置; 一般来说 如果重试都失败了,可能就是MQ服务器出现了异常/宕机了,我们还需要再重试了,当然也可以编码,但是通常我们不会这么做,此时这个mq已经不能
Redis 八股文面试题
你在开发中都是怎么使用Redis的 ? 我主要使用的是 Redis的缓存和它的分布式锁功能 Redis 为什么快? 基于内存操作:内存的速度远高于访问磁盘的速度 单线程 + I/O 多路复用:避免了多线程带来的锁竞争、上下文切换的开销。 高效的底层数据结构和编码:使用内存紧凑的 ziplist (压
JUC 八股文面试题
谈谈你对线程和进程的理解 进程 线程 操作系统资源分配的基本单位 CPU 调度的基本单位 一个进程可包含多个线程 创建线程有几种方式?分别适用什么场景? 继承 Thread 类,重写run()方法:在无需返回值时使用 实现 Runnable 接口,实现run()方法:在需要返回值时使用 实现 Cal
JVM 八股文面试题
Java如何实现跨平台? 不直接跑在操作系统上,而是跑在 JVM 上。 JDK和JRE有什么区别? **JRE(Java Runtime Environment)**Java 程序的运行环境:只有JVM+核心类库(如 java.lang.*、java.util.*) **JDK(Java Devel
MySQL 八股文面试题
常用的连接池有哪些,他们有什么区别 HikariCP:最轻量、最快,Spring Boot 默认,推荐优先使用 Druid:阿里巴巴开源,性能稍逊,但功能丰富,尤其是监控、统计、SQL 防注入,适合对 安全性和运维监控 要求高的项目(牺牲少量性能换取了监控功能) C3P0 / DBCP:曾经流行,现
集合 八股文面试题
在Java中,集合体系结构是怎么样的?主要分为那些类?分别有什么特点? 单列集合(Collection) List:有序、可重复的集合(如 ArrayList、LinkedList)。 Set:无序、不可重复的集合(如 HashSet、TreeSet)。 双列集合(Map) 代表一组键值对(Key-




