logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

Kafka利用sendfile与Page Cache实现高性能传输剖析

本文剖析Kafka通过将消息缓存交由操作系统Page Cache,并结合sendfile零拷贝机制,实现高性能传输。其核心ge C在于:1)摒弃JVM堆内存缓存,避免GC停顿与内存开销;2)统一二进制格式,实现“零转换”;3)利用sendfile在内核态直接将Paache数据经SG-DMA直送网卡,减少上下文切换与CPU拷贝,显著降低延迟、提升吞吐。该设计使Kafka在高并发场景下具备接近原生性能

#linux#jvm#java +2
JVM虚拟内存状态演进剖析

本文剖析JVM与操作系统协作下的虚拟内存状态演进:从Unmapped(未映射)经mmap(PROT_NONE)转为Reserved(仅注册VMA),再通过mprotect升级为Committed(仍未分配物理页),最终在写入时触发缺页中断,建立PTE映射并增加RSS。基于HotSpot源码,详解ReservedSpace与os::pd_reserve_memory的底层实现,揭示各阶段页表与物理内

#linux#jvm#java +2
专家视角看Lambda表达式的原理解析

摘要:Lambda表达式使用invokedynamic指令提供的高级特效实现,其核心是将创建逻辑推迟到运行时处理。编译时生成invokedynamic指向LambdaMetafactory.metafactory方法,运行时通过InnerClassLambdaMetafactory动态生成实现类字节码。整个过程包含:1)编译期埋入invokedynamic指令;2)运行时通过BSM引导;3)动态生

#linux#jvm#java +2
AMD Hello-ROCm 学习活动笔记-第一天部署和运行Gemma4大模型

本文记录了在AMD云平台上部署和运行Gemma4大模型的实操过程。主要内容包括:1)注册AMD云和魔搭账号获取100小时算力资源;2)通过amd-smi和PyTorch命令验证GPU可用性;3)使用腾讯云镜像加速安装ModelScope并下载Gemma4模型;4)通过vLLM服务启动模型并进行对话测试。文章详细列出了每个步骤的终端命令和输出结果,同时提醒实验完成后需及时关闭云实例以避免算力浪费。整

AMD Hello-ROCm 学习活动笔记-第一天部署和运行Gemma4大模型

本文记录了在AMD云平台上部署和运行Gemma4大模型的实操过程。主要内容包括:1)注册AMD云和魔搭账号获取100小时算力资源;2)通过amd-smi和PyTorch命令验证GPU可用性;3)使用腾讯云镜像加速安装ModelScope并下载Gemma4模型;4)通过vLLM服务启动模型并进行对话测试。文章详细列出了每个步骤的终端命令和输出结果,同时提醒实验完成后需及时关闭云实例以避免算力浪费。整

JVM虚拟延迟内存分配机制源码剖析

本文分析了JVM虚拟内存管理的三阶段机制:预留(Reserved)、提交(Committed)和物理映射。在Linux环境下,JVM通过mmap系统调用预留虚拟地址空间,此时仅在内核创建VMA结构而不分配物理内存。提交阶段通过mprotect修改VMA权限,内核进行Overcommit审计但依然延迟物理内存分配。最终在首次访问内存时触发缺页中断,内核才从伙伴系统分配物理页帧并建立映射。这种延迟分配

#linux#jvm#java +2
深入解析Java源码执行过程

dlopen (把库加载进内存) ➔ dlsym (查找CreateJavaVM函数地址) ➔ 填充 InvocationFunctions ➔ 创建新的的线程 ➔ 在JavaMain函数中调用 CreateJavaVM (点火启动) ,执行Java程序的main(String[] args)方法。

#linux#jvm#java
Java源码探秘:JVM启动与类加载机制

本文分析了JVM初始化过程及引导类加载器源码实现。主要内容包括:1)JVM初始化步骤,通过JavaMain()函数完成JVM初始化、主类加载、main方法验证和调用;2)引导类加载器源码分析,重点解读了LoadMainClass()函数如何通过JVM_FindClassFromBootLoader查找LauncherHelper类,并调用其checkAndLoadMain方法完成类加载;3)展示了

#linux#jvm#java +2
专家视角看 Java 字节码与Class 文件格式

本文深入解析了Java Class文件格式及其在JVM中的处理过程。文章从Class文件的二进制结构入手,详细介绍了魔数、版本号、常量池、访问标志、类层级、字段方法表等核心组成部分。重点分析了OpenJDK源码中classFileParser.cpp的解析流程,包括常量池符号引用转化为内存对象、方法字节码存储、最终生成InstanceKlass结构的过程。特别强调了Class文件采用符号引用而非物

#linux#jvm#java +2
Java锁机制之轻量级锁判断与尝试逻辑源码剖析

本文深入剖析了Java轻量级锁的判断与尝试逻辑。主要内容包括:1.执行流程分析:从`fast_enter`的偏向锁处理到`slow_enter`的轻量级锁尝试,最终可能升级为重量级锁的全链路逻辑。2.源码深度解读:重点剖析了`slow_enter`方法中的关键判断逻辑:无锁状态下的CAS抢占(轻量级锁核心机制)。锁重入情况的特殊处理。锁膨胀的触发条件。状态转换图解**:通过三步式判断流程和Mark

#linux#jvm#java +2
    共 93 条
  • 1
  • 2
  • 3
  • 10
  • 请选择