Java 与底层操作系统的交互细节

作者/分享人:小强
向 Ta 提问
某互联网公司担任架构师,有过微服务架构从0到1的经历,对微服务生态下的相关中间件源码有过深入研究。

下层基础决定上层建筑,只有扎实的基础知识,熟练掌握底层原理,才能在技术道路上走的更远,更深。

Java 作为一门高级语言也一样,你了解什么是缓存伪共享么?你了解 RocketMQ 为提升文件读写速度做了哪些优化么?你知道为什么大家总建议线程池大小设置为 CPU 核心 * 2 ,这样合理么?

本场 Chat 将介绍以下内容

  1. CPU 访问内存
  2. 虚拟存储
  3. 进程中断
  4. 系统调用
  5. Java 内存映射
  6. Java 对象内存布局
  7. Java 线程同步
  8. Unsafe 类方法分析
已有440人预订
预订达标
文章出炉
     
03月13日
03月28日
本场 Chat 文章已出炉,购买后即可阅读文章并获得一张小强的读者圈Pass
请务必添加GitChat服务号以查看活动进度及获取活动通知。
查看文章评论/提问
小强
人生真是寂寞如雪啊
磊哥: 是整个系列就这么一篇文章?
大臭太臭
MappedByteBuffer不会直接分配物理内存,但是ByteBuffer.allocateDirect会直接分配物理内存。
大臭太臭: MappedByteBuffer每个页写一次才能把所有页都加载,学习了。谢谢~
小强: ByteBuffer.allocateDirect用的unsafe.allocateMemory(size)来分配内存,MappedByteBuffer是个抽象类,MappedByteBuffer每个页写一次会把这个页里面的所有数据都加载进内存,4kb 一页,要加载所有页进内存则需要把每个页都读或者写一次
小强: MappedByteBuffer是个抽象类,实际用到的还是DirectByteBuffer
Omooo
够硬核!
latent
串起来了之前看的CSAPP,高手,非常感谢🙏
你可能还喜欢
JVM 问题诊断快速入门
火币集团研发中心
面试字节跳动的一点小经验
Wayne
互联网公司热门面试题:如何保证缓存与数据库的双写一致性?
魏武归心2016
面试官问:为什么在项目中使用消息队列!到底是想考什么?
零下
如何做好性能压测(二) | 性能压测工具选型对比
阿里巴巴中间件
被动收入 101 :使用云开发和 Taro 开发一个小程序
白宦成
微信扫描登录
关注提示×
扫码关注公众号,获得 Chat 最新进展通知!
入群与作者交流×
扫码后回复关键字 入群
Chat·作者交流群
入群码
该二维码永久有效