1. Java 堆空间

**发生频率:**5颗星

造成原因

  1. 无法在 Java 堆中分配对象

  2. 吞吐量增加

  3. 应用程序无意中保存了对象引用,对象无法被 GC 回收

  4. 应用程序过度使用 finalizer。finalizer 对象不能被 GC 立刻回收。finalizer 由结束队列服务的守护线程调用,有时 finalizer 线程的处理能力无法跟上结束队列的增长

解决方案

单位对应:GB -> G, g;MB -> M, m;KB -> K, k

  1. 使用 -Xmx 增加堆大小

  2. 修复应用程序中的内存泄漏

2. GC 开销超过限制

**发生频率:**5颗星

造成原因

  1. Java 进程98%的时间在进行垃圾回收,恢复了不到2%的堆空间,最后连续5个(编译时常量)垃圾回收一直如此。

解决方案

  1. 使用 -Xmx 增加堆大小

  2. 使用 -XX:-UseGCOverheadLimit 取消 GC 开销限制

  3. 修复应用程序中的内存泄漏

3. 请求的数组大小超过虚拟机限制

**发生频率:**2颗星

造成原因

  1. 应用程序试图分配一个超过堆大小的数组

解决方案

  1. 使用 -Xmx 增加堆大小

  2. 修复应用程序中分配巨大数组的 bug

4. Perm gen 空间

**发生频率:**3颗星

造成原因

Perm gen 空间包含:

  • 类的名字、字段、方法

  • 与类相关的对象数组和类型数组

  • JIT 编译器优化

当 Perm gen 空间用尽时,将抛出异常。

解决方案

  1. 使用 -XX: MaxPermSize 增加 Permgen 大小

  2. 不重启应用部署应用程序可能会导致此问题。重启 JVM 解决

5. Metaspace

**发生频率:**3颗星

造成原因

  1. 从 Java 8 开始 Perm gen 改成了 Metaspace,在本机内存中分配 class 元数据(称为 metaspace)。如果 metaspace 耗尽,则抛出异常

解决方案

  1. 通过命令行设置 -XX: MaxMetaSpaceSize 增加 metaspace 大小

  2. 取消 -XX: maxmetsspacedize

  3. 减小 Java 堆大小,为 MetaSpace 提供更多的可用空间

  4. 为服务器分配更多的内存

  5. 可能是应用程序 bug,修复 bug

6. 无法新建本机线程

**发生频率:**5颗星

造成原因

  1. 内存不足,无法创建新线程。由于线程在本机内存中创建,报告这个错误表明本机内存空间不足

解决方案

  1. 为机器分配更多的内存

  2. 减少 Java 堆空间

  3. 修复应用程序中的线程泄漏。

  4. 增加操作系统级别的限制

  • ulimit -a

  • 用户进程数增大 (-u) 1800

  1. 使用 -Xss 减小线程堆栈大小

7. 杀死进程或子进程

**发生频率:**1颗星

造成原因

  1. 内核任务:内存不足结束器,在可用内存极低的情况下会杀死进程

解决方案

  1. 将进程迁移到不同的机器上

  2. 给机器增加更多内存

与其他 OOM 错误不同,这是由操作系统而非 JVM 触发的。

8. 发生 stack_trace_with_native_method

**发生频率:**1颗星

造成原因

  1. 本机方法(native method)分配失败

  2. 打印的堆栈跟踪信息,最顶层的帧是本机方法

解决方案

使用操作系统本地工具进行诊断

总结:绘上一张Kakfa架构思维大纲脑图(xmind)

其实关于Kafka,能问的问题实在是太多了,扒了几天,最终筛选出44问:基础篇17问、进阶篇15问、高级篇12问,个个直戳痛点,不知道如果你不着急看答案,又能答出几个呢?

若是对Kafka的知识还回忆不起来,不妨先看我手绘的知识总结脑图(xmind不能上传,文章里用的是图片版)进行整体架构的梳理

资料领取方式:点击这里免费下载

梳理了知识,刷完了面试,如若你还想进一步的深入学习解读kafka以及源码,那么接下来的这份《手写“kafka”》将会是个不错的选择。

  • Kafka入门

  • 为什么选择Kafka

  • Kafka的安装、管理和配置

  • Kafka的集群

  • 第一个Kafka程序

  • Kafka的生产者

  • Kafka的消费者

  • 深入理解Kafka

  • 可靠的数据传递

  • Spring和Kafka的整合

  • SpringBoot和Kafka的整合

  • Kafka实战之削峰填谷

  • 数据管道和流式处理(了解即可)

  • Kafka的消费者

  • 深入理解Kafka

  • 可靠的数据传递

  • Spring和Kafka的整合

  • SpringBoot和Kafka的整合

  • Kafka实战之削峰填谷

  • 数据管道和流式处理(了解即可)

[外链图片转存中…(img-VvFXGZJy-1625151474145)]

经验总结:图书管理系统java课程设计相关推荐

  1. C#实现图书管理系统(课程设计)——第五步、查询界面及操作

    C#实现图书管理系统(课程设计)--第五步.查询界面及操作 上一篇:借书界面 (1)界面设计: 前三个框为DataGridView控件,具体的使用方法自行百度,以下简单讲解: 1.创建后点击,右上角会 ...

  2. C#实现图书管理系统(课程设计)——第二步、登陆界面

    C#实现图书管理系统(课程设计)--第二步.登陆界面 (1)整体设计方案 划红线的地方是登录界面方案 主要参考:https://blog.csdn.net/weixin_43209848/articl ...

  3. C#winform图书管理系统(课程设计)

    C#winform图书管理系统(课程设计)借书.还书.查询用户信息.查询图书信息.添加图书.删除图书.修改图书信息

  4. 宿舍住宿管理java课程设计_宿舍管理系统Java课程设计

    宿舍管理系统Java课程设计 Java 课程设计设计(论文) 题目: 宿舍管理系统 所 在 院: 专 业 : 班 级 : 学 生 姓 名: 学 号: 指 导 教 师: 年 月 日课程设计(论文)任务书 ...

  5. 用C#实现一个简单的图书管理系统(课程设计)

    用C#(sharp)实现一个简单的图书管理系统(课程设计) 学校的数据库课程结束了,要求完成一个课程设计,于是我用C#实现了一个简单的图书管理系统(ADO.NET) 源码放在了github上,仅供参考 ...

  6. Oracle数据库图书管理系统的课程设计

    Oracle数据库图书管理系统的课程设计 在Oracle数据库最初的sys用户XE数据库下执行: --删除表空间 drop tablespace tablespace_book including c ...

  7. Java web图书管理系统——数据库课程设计

    写了一个最基础的java web数据库课设,遵循三层架构. 后端:Java 前端:jsp + layui + echarts 数据库:mysql web容器:tomcat 操作系统:win10 IDE ...

  8. JAVA设计学校的人事管理系统,java课程设计(人事管理系统).doc

    可编辑版 PAGE Word完美格式 人事管理系统 TOC \o "1-3" \h \z \u HYPERLINK \l "_Toc343718074" 一.系 ...

  9. 玩具信息管理系统Java课程设计_ssm儿童玩具租赁管理系统

    通过儿童玩具租售管理系统,使其他喜欢玩具方面的朋友在为孩子购买和查找时能够方便快捷,不会耗费太多时间.随着计算机技术的飞速发展和网络应用的普及,利用网络构建玩具租赁平台实在必行,使用计算机对儿童玩具租 ...

最新文章

  1. SpringJDBC的简单应用
  2. 使用CSS实现三栏自适应布局(两边宽度固定,中间自适应)
  3. ubuntu 创建桌面快捷方式
  4. 基于CMake构建MSVC_CUDA及MinGW编译环境下的的OpenCV项目
  5. Spring使用JDBC访问MySQL数据库
  6. 微信小程序开发的游戏《拼图游戏》
  7. Loadrunner 第一个场景设计Controller
  8. 传感器的时间同步系统
  9. kickstart无人值守安装Ubuntu1804系统
  10. UEFI模式下安装ubuntu以及重装ubuntu教程
  11. Discuz安装短信宝短信插件教程
  12. android 自定义数字键盘
  13. 如何用移动硬盘备份计算机,怎么自动备份电脑资料到移动硬盘
  14. 用Python画动态圣诞树 学会了送给你女朋友呀~
  15. 物联网之MQTT3.1.1和MQTT5协议 (4) PUBLISH报文
  16. HihoCoder——Trie树
  17. css+div实现导航栏
  18. docker监控方案
  19. 图像处理-3 彩色空间互转
  20. 带上紧箍咒,特斯拉辅助驾驶系统即将更新

热门文章

  1. 中国双接口芯片卡市场趋势报告、技术动态创新及市场预测
  2. css legend框大小,CSS-如何给 legend 标签设定宽度
  3. php a文件怎么继承b文件的类,php 如何将存在a文件中图片移到b文件中
  4. Linux “百变”秀:今天 Windows 95,明天 Mac OS 9
  5. 直面 Jira,Worktile CTO 为何自信满满?
  6. 数据说话!UCloud「硬刚」腾讯云,高性能 AMD 云主机哪家强?
  7. 黑客用上机器学习你慌不慌?这 7 种窃取数据的新手段快认识一下
  8. 手机很早就有飞行模式了,为什么最近几年坐飞机才不用关机?
  9. 雷军说的 WiFi 6 到底是什么?
  10. 云原生开发环境初探 | CSDN 博文精选