编辑
2023-12-04
JVM
00

JVM的预热是指在应用启动之初,为了保障第一次请求的快速响应,采取特定的策略来处理第一次的预加载逻辑。这是因为JVM的懒加载和JIT(即时编译)机制会导致第一次调用的耗时较长。

一、JVM架构基础

JVM进程启动时,ClassLoader会将需要的所有类加载到内存。ClassLoader主要分为以下三步:

  • Bootstrap Class:负责加载核心类库,例如基础的运行时类库。
  • Extension Class:负责加载java.ext.dirs路径下的类,通常用于添加额外的类库。
  • Application Class:负责加载实际应用包含的类。
编辑
2023-12-02
后端
00
go
package main import ( "fmt" "reflect" )
编辑
2023-12-02
后端
00

今天水群看到个奇怪的需求,要求用go去查数据库,需求就是用户执行任意sql然后把对应数据查询出来用表的形式展示,表类型,字段数量和类型都是不确定的,这种需求用动态语言python很容易实现,用go的话,有点麻烦也不太难,有同学说了动态增加结构体字段,这样的话好像不行。go也没有tuple这种类型就是说,但是可以用[]interface{}来模拟一下,再结合反射,就好了

go底层一般都是database/sql这个结构去操作mysql的,提供的接口是db.Query,看一下

编辑
2023-12-02
算法题
00
编辑
2023-12-02
JVM
00

JVM的内存分配器和内存分配机制是指在Java虚拟机中,如何为对象分配内存空间以及如何管理和回收这些内存空间的过程。