【9-6 Java后端面经基础复习】

Linux基础

  1. Linux中查看内存的命令有哪些?
    • free命令可以查看系统中的内存空间使用状况,包括实体内存、共享内存、内核内存、虚拟的交换内存
      • free的参数B\K\M\T等可以设置内存的单位
      • s\ v等可以连续查看或者查看版本号
    • top命令可以查看系统的状态
      • 系统运行的基本信息:当前时间和运行时长、平均负载
      • 系统中运行的进程的信息:总量、正在运行的数量、休眠的数量、停止的数量、和僵尸状态的数量
      • 系统中内存的信息:内存的总量、使用内存、空闲内存、缓存的总量,以及一些交换内存的使用
      • 系统CPU的使用情况:内核、用户空间、IO的CPU使用情况
  2. Linux中如何通过端口查看进程名,如何通过进程名查看端口
    • 通过ps -ef | grep 进程名来查看pid
    • 通过netstat -nap | grep pid 来查询端口号
    • 通过netstae -nap | grep 端口号来查询进程
  3. 说一说ping命令
    • ping命令使用ICMP协议,用于查看接收端是否能够正常通讯
  4. 进程和线程的区别是什么?
    • 一个进程可以有多个线程,线程属于一个进程
    • 当进程挂掉,对应的线程也会挂掉,但是进程于进程之间不会相互影响
    • 进程拥有独占的内存资源,线程共享进程的内存资源,包括数段和代码段,线程拥有独占的栈内存和寄存器
    • 进程是资源调度的最小单位,线程是CPU调度的最单位
    • 进程的切换开销大,需要求换TLB,获取新的内存地址,刷新硬件上下文以及占空间,线程只需要刷新栈空间和硬件的上下文
  5. 协程和线程的区别
    • 协程是从属于线程,因此对变量的读写不会发生冲突,减少了加锁解锁的开销
    • 协程是直接操作栈空间的,几乎没有内存切换的开销,因此切换的效率更高

设计模式复习

  1. 设计模式的六大原则是什么
    • 单一职责原则、里氏替换原则、依赖导致原则、接口隔离原则、开闭原则、最少知道原则
  2. 说一说工厂模式
  3. 说一说适配器模式、装饰模式和代理模式

中间件

  1. MQ的作用是什么
  2. 什么是消费者和生产者模式是什么
  3. RabbitMQ如何实现顺序消息

数据库复习 (作用-本质-)

  1. MySQL有哪些函数
  2. 数据库是什么
  3. 为什么要使用数据库
  4. 数据库的三大范式是什么
  5. 数据库连接的泄露是什么
  6. 什么是触发器
  7. 数据库索引的优点和缺点
  8. 有哪些索引类型
  9. 添加索引有哪些注意的事项
  10. 10.B+树和Hash索引之间的区别
  11. 什么是左前缀匹配原则
  12. 什么是聚簇索引
  13. 什么是数据库事务
  14. 数据库事务有哪些状态
  15. 数据库事务有哪些特性,如何进行实现
  16. 事务之间的相互影响
  17. 什么是事务的隔离级别
  18. 锁的分类
  19. 事务隔离级别和锁的关系
  20. 什么是死锁,如何避免
  21. 什么是乐观锁和悲观锁,使用场景,如何实现
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值