首页
AI Coding
数据标注
NEW
沸点
课程
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
Clarence0214
掘友等级
个人公众号: 小道一下
获得徽章 0
动态
文章
专栏
沸点
收藏集
关注
作品
赞
43
文章 43
沸点 0
赞
43
返回
|
搜索文章
赞
文章( 43 )
沸点( 0 )
Netty源码之内存管理(三)(4.1.44)
这是我们解读 Netty 内存管理的第三篇文章,前面两篇重点介绍了 ByteBuf 对象以及内存的分配和管理。比如利用分治思想创建多个 PoolArena 提供内存分配的能力、使用满二叉树数据结构管理内存的分配和回收等。但还有一个重要的东西我们没有讲,就是 jemalloc 从…
Netty源码之对象池
池化是我们提升性能的手段之一,比如线程池、内存池以及接下来讲的对象池。池化的作用目的是减少创建和销毁对象的开销,提高并发处理能力,而且利用池化也可以降低 GC 压力。Netty 设计了一个简易的对象池,在 Netty 内存使用广泛,比如对 PooledUnsafeDirectB…
Netty源码之对象池
池化是我们提升性能的手段之一,比如线程池、内存池以及接下来讲的对象池。池化的作用目的是减少创建和销毁对象的开销,提高并发处理能力,而且利用池化也可以降低 GC 压力。Netty 设计了一个简易的对象池,在 Netty 内存使用广泛,比如对 PooledUnsafeDirectB…
Netty源码之FastThreadLocalThread(4.1.44)
我们都知道,Java 的 ThreadLocal 用在多线程环境下,提供一种访问某个变量的特殊方式,具体可看Java核心技术之ThreadLocal。由于 ThreadLocal 是在空间和时间之间寻求平衡,较好兼顾时间和性能。但是,Netty 通过理解 ThreadLocal…
基于SSD的Kafka应用层缓存架构设计与实现
Kafka出色的I/O优化以及多处异步化设计,相比其他消息队列系统具有更高的吞吐,同时能够保证不错的延迟,十分适合应用在整个大数据生态中。 目前在美团数据平台中,Kafka承担着数据缓冲和分发的角色。如下图所示,业务日志、接入层Nginx日志或线上DB数据通过数据采集层发送到K…
今年我读了四个开源项目的源码,来分享下心得
Hola,我是 yes。 今年来看了 RocketMQ、Kafka、Dubbo 、Tomcat 的源码,之前也有读者询问过如何读源码,索性就来分享一下。 其实还看了一点点 Linux、Redis、jdk8,这几个阅读的目的和上面几个是不同的,下面会提到。 这和你看开源框架源码没…
JVM性能调优实战:让你的IntelliJ Idea纵享丝滑
重新启动之后查看VisualGC,新生代gc次数从 17次 降低到了 7次,耗时从 324ms 降低到了 152ms。 再次仔细观察优化前的图,注意看 Last Cause: Metadata GC Threshold , 最后一次gc是应该Metaspace区域内存不够发生的…
Java面试必问:ThreadLocal终极篇
张三最近天气很热心情不是很好,所以他决定出去面试跟面试官聊聊天排解一下,结果刚投递简历就有人约了面试。 我丢,什么情况怎么刚投递出去就有人约我面试了?诶。。。真烦啊,哥已经不在江湖这么久了,江湖还是有哥的传说,我还是这么抢手的么?太烦恼了,帅无罪。 张三的心态一下子就崩了,出来…
Java并发之AQS简单入门
AQS(AbstractQueuedSynchronizer) 同步器 JDK1.5 提供了 java .util.concurrent 包(JUC)大大的提升了并发性能,而AQS是JUC的核心。 他是用来构建锁(比如ReentrantLock)和其他同步工具(比如CountD…
支撑百万级并发,Netty如何实现高性能内存管理
Netty先向系统申请一整块连续内存,称为chunk,默认大小chunkSize = 16Mb,通过PoolChunk对象包装。为了更细粒度的管理,Netty将chunk进一步拆分为page,默认每个chunk包含2048个page(pageSize = 8Kb) 不同大小池化…
下一页
个人成就
文章被点赞
56
文章被阅读
17,879
掘力值
515
关注了
20
关注者
49
收藏集
4
关注标签
1
加入于
2020-06-01