随笔分类 - 后端开发
后端开发相关技术栈,包括但不限于框架、中间件、分布式、微服务、大数据、系统设计、架构设计、开发工具、运维工具、低代码。
摘要:@Autowired 报错的四种情况
阅读全文
摘要:调优案例分析与实战
阅读全文
摘要:虚拟机性能监控、故障处理工具
阅读全文
摘要:垃圾收集器与内存分配策略
阅读全文
摘要:JVM 体系结构和底层原理 JVM 体系结构 我们知道,实际上 JVM 也是一种软件,它是运行在操作系统之上的,它与硬件没有直接交互。 JVM 的整个体系结构为: 下面的内容将逐一阐述这些知识点。 类加载器 ClassLoader 类加载器 是负责加载 class 文件的,它将 class 文件字节
阅读全文
摘要:后端开发全记录 持续更新 GitHub Java 后端开发文章合集导航。 Java 基础 Java 语言基础 Java 语言概述 Java 基本语法 变量与运算符 流程流程控制 数组 Eclipse 和数组 数组和算法 面向对象 面向对象上 面向对象中 面向对象下 异常处理 异常处理 多线程 多线程
阅读全文
摘要:Java 高频面试题(二) Java 基础 JUC 谈谈对 volatile 关键字的理解? 基本概念 volatile 是 JVM 提供的轻量级(不会引起线程上下文的切换和调度)同步机制,它保证可见性和禁止指令重排(保证有序性),不保证原子性。 值得一提的是,JMM(Java 内存模型,Java
阅读全文
摘要:Java 高频面试题(一) 自增变量 如下代码的运算结果: package java_one; /** * @author parzulpan * @version 1.0 * @date 2021-04 * @project JavaInterview * @package java_one *
阅读全文
摘要:Java 高频面试题(三) 待更新...
阅读全文
摘要:线程池和异步编排 线程池 初始化线程的方式 在实际开发中,有很多异步场景,为了节约时间或者提高系统的吞吐量,要做一些异步任务,在 Java 中要实现异步通常都是利用 Thread,开启一个线程 Thread。开启线程有四种方式,分别为: 继承 Thread 实现 Runnable 接口 实现 Cal
阅读全文
摘要:缓存与分布式锁 缓存 缓存使用 为了系统性能的提升,一般都会将部分数据放入缓存中,加速访问。而 db 承担数据落盘工作。 哪些数据适合放入缓存? 即时性、数据一致性要求不高的 访问量大且更新频率不高的(读多,写少) 举例:电商类应用,商品分类,商品列表等适合缓存并加一个失效时间(根据数据更新频率来定
阅读全文
摘要:Elasticsearch 入门 简介 全文搜索属于最常见的需求,开源的 Elasticsearch 是目前全文搜索引擎的首选。它可以快速地存储、搜索和分析海量数据。它的底层是开源库 Lucene,但是 Lucene 不能直接使用,必须自己写代码去调用它的接口。而 Elastic 是 Lucene
阅读全文
摘要:SpringBoot1.x 开发热部署和监控管理 热部署 在开发中我们修改一个 Java 文件后想看到效果不得不重启应用,这导致大量时间花费,我们希望不重启应用的情况下,程序可以自动部署(热部署)。 模板引擎 在 SpringBoot 中开发情况下禁用模板引擎的 cache 页面模板改变,按 CTR
阅读全文