自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(19)
  • 资源 (1)
  • 问答 (1)
  • 收藏
  • 关注

原创 Java垃圾收集器之G1

在之前的文章中介绍了,这边文章我想单独介绍一下G1垃圾收集器。。

2022-11-29 21:44:23 1508 1

原创 JVM垃圾收集器详解

如果说收集算法是内存回收的方法论,那么垃圾收集器就是内存回收的具体实现。虽然我们对各个收集器进行比较,但并非为了挑选出一个最好的收集器。因为直到现在为止还没有最好的垃圾收集器出现,更加没有万能的垃圾收集器,我们能做的就是根据具体应用场景选择适合自己的垃圾收集器。

2022-11-28 22:02:31 235

原创 JVM垃圾收集算法详解

本文主要介绍JVM垃圾回收算法

2022-11-27 20:24:49 174

原创 对象内存回收分析

堆中几乎放着所有的对象实例,对堆垃圾回收前的第一步就是要判断哪些对象已经死亡(即不能再被任何途径使用的对象)。

2022-11-27 20:08:33 289

原创 对象内存分配机制,看完再也不用怕full gc了

在生产环境中如果频繁出现full gc将会导致系统性能出现较为严重的下滑,而出现full gc的原因主要就是因为老年代空间不够用,所以解决问题的关键就是去分析为什么老年代的空间经常被占满。先来看一下对象内存分配的流程图:在上一篇Java内存模型简介中有提到,当我们创建对象时是有可能分配在栈上的。一般情况下,我们创建的对象都会分配在堆内存中,当对象没有被引用的时候,需要依靠GC进行回收内存,如果对象数量较多的时候,会给GC带来较大压力,也间接影响了应用的性能。为了减少临时对象在堆内分配的数量,JVM通过逃逸

2022-06-19 15:38:47 211

原创 JVM内存模型简介

JVM内存模型简介

2022-06-11 21:08:57 236

原创 深入Java对象创建过程

深入对象创建流程

2022-06-08 11:17:53 94

原创 细说Java类加载机制

从类加载的过程、类加载器、双亲委派机制以及自定义类加载器聊一聊Java类加载机制

2022-05-27 20:51:46 220

原创 k0s集群搭建记录

k0s搭建k0s 可以认为是一个下游的 Kubernetes 发行版,与原生 Kubernetes 相比,k0s 并未阉割大量 Kubernetes 功能,相较于kubeadm搭建集群变的方便了许多,感兴趣的可以看看kubeadm部署k8s集群。环境准备准备两台linux服务器,基本信息如下:主机名ipk0s-master192.168.31.111k0s-worker192.168.31.112设置免密登录在master节点执行:# 生成公钥$ ssh-k

2021-12-09 11:00:46 1001

原创 kong处理path参数

kong处理path参数

2021-12-09 10:16:21 1256 3

原创 springboot连接redis失败的问题

用springboot整合redis时,出现连接失败的问题,配置文件如下:spring: application: name: test redis: database: 1 host: xxx password: port: 6379 timeout: 10 jedis: pool: max-active: 200 # 连接池最大连接数(使用负值表示没有限制) max-wait: -1 # 连接

2021-08-15 17:37:15 1775

原创 CIDR正则表达式

分享一波IPv4和IPv6的正则校验表达式IPv4:private static final String IPV4_CIDR = "^(?:(?:[0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}(?:[0-9]|[1-9][0-9]" + "|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\/([0-9]|[1-2]\\d|3[0-2])$";IPv6:private static final S

2021-08-13 11:22:06 866

原创 helm安装nginx并配置https

想要使用helm首先得有个k8s集群,k8s集群搭建可以移步k8s集群搭建记录。创建chart首先创建nginx的chart包,目录结构如下:| - nginx/ | - charts/ | - templates | - configmap.yaml | - deployment.yaml | - secret.yaml | - service.yaml | - Chart.yaml | - values.yaml charts文件夹是存放chart依赖的子chart,如

2021-07-27 17:36:19 811 4

原创 一步一步深入spring源码彻底搞懂循环依赖问题

简介spring循环依赖相信不少准备面试或者正在面试的小伙伴都会或多或少的

2021-07-16 18:05:41 313

原创 K8S集群搭建记录

最近公司的部署逻辑全面转向K8S,经过一段时间学习入了下门,结合B站上K8S的学习视频在此记录一下K8S集群搭建的全过程。环境准备准备几台linux机器,具体几台自己看着办,我这里是三台,接着在节点机器下都执行一下以下命令,具体在哪台机器上执行可以看注释(没写的就是所以节点都执行一下):# 关闭防火墙$ systemctl stop firewalld$ systemctl disable firewalld# 关闭selinux# 永久关闭(我选择的是永久关闭,也能使用临时关闭)$ se

2021-07-08 11:16:32 149

原创 详细图文一步步记录Spring 5.3源码编译和调试(IDEA+Gradle)的过程

1 前言最近稍微研究了一下spring源码,看了不少资料发现不少大佬都是将spring源码拉到本地,自己编译完成之后在源码里面直接写注释,当然也更方便了自己学习和调试。所以我也做了一次尝试,在此记录一下编译的过程和遇到的问题。2 环境准备本地编译spring源码我使用的个软件版本如下:系统:Mac os Big SurIDEA:2020.1.2gradle:6.8.3spring: 5.3.7-SNAPSHOTjdk:11.0.113 Spring编译流程3.1 下载安装gradle

2021-07-02 15:54:02 2587

原创 SpringBoot中利用Environment给静态变量赋值配置文件中的常量

之前在公司做业务开发的时候有个需求,需要给工具类中静态变量赋值为application.yml中记录的常量,稍微花了点功夫,也踩了点坑,所以在此做个记录。配置文件配置文件中的常量如下:internal: aes: key: ${AES_KEY:testkey} iv: ${AES_IV:testiv}@Value()注解一般情况下,我们使用@Value()注解即可给变量赋值成我们指定key的值,例如:@Value("${internal.aes.key}")private

2021-06-30 17:19:04 2007

原创 VMWare新建和配置虚拟机(最小化安装)

网上下的虚拟机镜像有些包含了不少我们用不到的软件,为了节省资源我们可以选择以名字中包含Minimal的镜像,从而可以节省宿主机资源。VMWare虚拟机安装VMWare安装虚拟机的过程很简单,网上也有很多教程,我这里不做过多的记录。这里说明一点,我安装的时候网络配置选择的是NAT,共享主机的网络。配置虚拟机VMWare完成虚拟机安装之后,我们需要对虚拟机进行配置。这里主要是配置虚拟机的网络,其他的可以自行选择是否需要配置。net-tools安装有时候我们下载到的Minimal镜像是没有ifconf

2021-06-28 16:37:23 1996

原创 k8s部署Java项目实战

这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入欢迎使用Markdown编辑器你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Mar

2021-06-10 10:50:02 923

k8s初学者 k0s部署安装压缩包

k8s初学者 k0s部署安装压缩包

2021-12-09

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除