logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

【SpringBoot】SpringBoot的两种启动方式原理!

使用java -jar默认情况下,不会启动任何嵌入式Application Server,该命令只是启动一个执行jar main的JVM进程,当spring-boot-starter-web包含嵌入式tomcat服务器依赖项时,执行java -jar则会启动Application Server。到这里总算是看到了tomcat的踪迹。//Engine是最高级别容器,Host是Engine的子容器,C

文章图片
#java#后端
干货满满,从一个案例学习k8s基本架构

Kubernetes(简称K8S,K和S之间有8个字母)是用于自动部署,扩展和管理容器化应用程序的开源系统。它将组成应用程序的容器组合成逻辑单元,以便于管理和服务发现。Kubernetes 源自Google15年的生产环境的运维经验,同时凝聚了社区的最佳创意和实践。

文章图片
#学习#kubernetes#架构
深入浅出SpringBoot【六】mysql配置及数据库查询

深入浅出SpringBoot【六】mysql配置及数据库查询

文章图片
#数据库#spring boot#mysql +2
如何实现可视化全链路日志追踪?

传统的ELK方案是一种滞后的业务追踪,需要事后从大量离散的日志中搜集和筛选出需要的日志,并人工进行日志的串联分析,其过程必然耗时耗力。而分布式会话跟踪方案则是在调用执行的同时,实时地完成了链路的动态串联,但由于是会话级别且仅关注于调用关系等问题,导致其无法很好地应用于业务追踪。因此,无论是传统的ELK方案还是分布式会话跟踪方案,都难以满足日益复杂的业务追踪需求。

文章图片
#java#后端
Spring Boot 多数据源配置

这样写看起来确实有些麻烦,通常可能不会像这样在一个方法里操作多个数据库,就比如说假设这是一个管理后台,为了图省事把所有业务都写在这一个项目里,这个时候就需要配置多个数据源,各个数据库的业务互相没有关联,只是写在同一个项目中而已,这样的话如果每次都手动设置数据源太麻烦,可以定义一个AOP切面来自动切换数据源。由于是MyBatsi-Plus,所以配的是MybatisSqlSessionFactoryB

#spring boot#后端#java
JVM内存模型与类加载机制

创建类的实例 (new ...)访问某个类,或者接口的静态变量,或者对静态变量进行赋值调用类的静态方法反射初始化一个类的子类java虚拟机启动时,被标明为启动类的类(比如我在一个文件同时写了多个类c1,c2....,java c1 ,这里的c1就是我主动使用到类)java.lang.ClassLoader的子类用户定制类的加载方式提一下动态代理,第一个参数要求我们传递一个类加载器,使用这个类加载器

文章图片
#jvm
Spring Boot 多数据源配置

这样写看起来确实有些麻烦,通常可能不会像这样在一个方法里操作多个数据库,就比如说假设这是一个管理后台,为了图省事把所有业务都写在这一个项目里,这个时候就需要配置多个数据源,各个数据库的业务互相没有关联,只是写在同一个项目中而已,这样的话如果每次都手动设置数据源太麻烦,可以定义一个AOP切面来自动切换数据源。由于是MyBatsi-Plus,所以配的是MybatisSqlSessionFactoryB

文章图片
#spring boot#后端#java
深入浅出SpringBoot【六】mysql配置及数据库查询

深入浅出SpringBoot【六】mysql配置及数据库查询

文章图片
#数据库#spring boot#mysql +2
深入理解Java虚拟机(二):JVM垃圾回收算法 + 垃圾收集器

01 前言上次讲解了JVM内存相关知识,今天继续JVM专题。02 JVM垃圾回收算法2.1 什么是垃圾回收?程序的运行必然需要申请内存资源,无效的对象资源如果不及时处理就会一直占有内存资源,最终将导致内存溢出,所以对内存资源的管理是非常重要了。2.2 什么样的对象需要回收?引用计数法​ 引用计数是历史最悠久的一种算法,最早George E. Collins在1960的时候首次提出,50年后的今天,

文章图片
#jvm#java#后端
到底了