2024-4-19 群讨论:GraalVM 与 JVM 使用

以下来自本人拉的一个关于 Java 技术的讨论群。关注公众号:hashcon,私信进群拉你

GraalVM Native Image 的进程能否被 jps 看到?

感谢 dreamlike_ocean ( space.bilibili.com/8227104 )指正

如果编译参数里面开启了 jstat,jmx 等特性(--enable-monitoring=jmxserver,jmxclient,jvmstat),就能看到,没有开启就看不到。

当前对于 GraalVM 与 JVM 的使用

  1. 针对 Lambda 类型任务 (例如不频繁的但是处理数据比较多的定时任务,如每周报表,以及临时的数据导出任务),使用 GraalVM Native Image :
    1. 这种任务不适合放在常驻的微服务,浪费资源:
      1. 微服务要按照这个定时任务的标准设计内存和 CPU,很长时间是不用这么多的。
      2. 要节约,并且放在常驻的微服务,需要定时任务启动前,以更高的内存和 CPU 重启微服务,定时任务结束后回复原来的参数重启微服务。
    2. 适合放在 k8s cronjob 或者 AWS Lambda 这种服务,但是这些服务都对启动时间有很高有求,需要在一定时间内启动好并告诉容器就绪了。
    3. 这种的适合 GraalVM Native Image,一是对启动时间有要求,二是一般依赖的库比常驻微服务简单很多,改造起来简单很多。
  2. 针对常驻的微服务,还是使用 JVM :
    1. 针对涉及很多存储 io 连接的微服务 ,先不要使用 CRaC 机制,先只使用 CDS 加速类加载,然后可以考虑用 Graal JIT 替代 C2 编译器。
    2. 针对没有很多存储 io 连接的微服务,使用 CRaC,例如 web 引擎微服务,网关微服务,广告微服务(大部分访问在本地缓存),这些正好是对于流量更敏感的微服务,需要在流量到来时,快速扩容并启动。

个人简介:个人业余研究了 AI LLM 微调与 RAG,目前成果是微调了三个模型:

  1. 一个模型是基于 whisper 模型的微调,使用我原来做的精翻的视频按照语句段落切分的片段,并尝试按照方言类别,以及技术类别分别尝试微调的成果。用于视频字幕识别。
  2. 一个模型是基于 Mistral Large 的模型的微调,识别提取视频课件的片段,辅以实际的课件文字进行识别微调。用于识别课件的片段。
  3. 最后一个模型是基于 Claude 3 的模型微调,使用我之前制作的翻译字幕,与 AWS、Go 社区、CNCF 生态里面的官方英文文档以及中文文档作为语料,按照内容段交叉拆分,进行微调,用于字幕翻译。
    目前,准确率已经非常高了。大家如果有想要我制作的视频,欢迎关注留言。
    本人也是开源代码爱好者,贡献过很多项目的源码(Mycat 和 Java JFRUnit 的核心贡献者,贡献过 OpenJDK,Spring,Spring Cloud,Apache Bookkeeper,Apache RocketMQ,Ribbon,Lettuce、 SocketIO、Langchain4j 等项目 ),同时也是深度技术迷,编写过很多硬核的原理分析系列(JVM)。本人也有一个 Java 技术交流群,感兴趣的欢迎关注。
    另外,一如即往的是,全网的所有收益,都会捐赠给希望工程,坚持靠爱与兴趣发电。
相关推荐
程序猿DD2 小时前
OctaFuse Gateway 2.15.0:MCP 聚合、向量 Embeddings 与官方目录同步
后端·agent
蛋蛋的就会顺顺的4 小时前
hot100 p0——栈,贪心算法,动态规划
java·前端·javascript·算法·leetcode·力扣
余槐i4 小时前
PostgreSQL 函数索引报错 must be immutable:3种绕法与代价
数据库·后端·sql·postgresql·性能优化
需要8265 小时前
Spring Bean 生命周期:从实例化到销毁的完整钩子
java·后端·spring
小 黄 鸡5 小时前
HashMap 面试必会知识点详解(JDK 8)
java·面试·职场和发展
凤山老林6 小时前
Spring Boot 接入国密 SM2/SM3/SM4 的一些实践记录
spring boot·后端·python
伯恩bourne7 小时前
Spring Boot Bean 注册的两种方式:@Component 家族 vs @Configuration + @Bean
java·spring boot·后端
张彦峰ZYF7 小时前
停顿短不等于延迟低:G1、ZGC 与低延迟服务的目标分野、代价账本与选型标定
后端·回收暂停、应用停止总时长·到达安全点、分配停滞·屏障吃吞吐、并发线程吃核心·并发窗口吃堆余量·分区式靠挑回收集兑现目标·染色指针式不支持压缩引用
silvamux_7 小时前
curl 测试 OpenAI 兼容 API 的完整流程
java·人工智能·缓存·ai·oneapi
pride.li8 小时前
第03章 Python 教程-基础语法:注释与变量
服务器·前端·后端·python·算法·计算机视觉