排序
Netty是如何检测资源泄漏的?
为了减轻 GC 的压力、以及避免频繁向 OS 申请和释放内存,Netty 基于 JeMalloc 思想自己实现了一套内存管理方案。不管是堆内存还是直接内存,都可以交给 Netty 来统一管理,这带来了两个好处,...
互联网高并发设计的手段:架构优化层次、算法逻辑层次、代码层次
性能优化目标 ● 缩短响应时间 ● 提高并发数(增加吞吐量) ● 让系统处于合理状态 性能优化手段 空间换时间 系统时间是瓶颈:例如 缓存复用计算结果,降低...
SkyWalking 的Trace还能通过编码构建 -中篇
相关文章《Skywalking on the way-千亿级的数据储能、毫秒级的查询耗时》 欢迎关注公众号【架构染色】交流学习 一、背景 在上一篇《通过编码方式构建 SkyWalking 的 Trace-上篇》中介绍了为什么...
51-【springboot+easypoi】实现大数据量excel导出
一、前言 二.代码实现逻辑 三.总结 一、前言 环境:SpringBoot 2.1.5.RELEASE 需求:利用springboot+easypoi实现大数据量的导出excel 二.代码实现逻辑 @RequestMapping('export') publ...
HashMap源码解读—Java8版本
一、HashMap简介 HashMap顶部有一段很长的注释,大概的介绍了HashMap。 1.1 原文 /** * Hash table based implementation of the Map interface. This * implementation provide...
为什么阿里不推荐使用 keySet() 遍历HashMap?
Part1引言 HashMap相信所有学Java的都一定不会感到陌生,作为一个非常重用且非常实用的Java提供的容器,它在我们的代码里面随处可见。因此遍历操作也是我们经常会使用到的。HashMap的遍历方式现...
SpringBoot实现动态导出word文档
背景 最近有一个需求是需要动态导出合同、订单等信息,导出一个word文档供客户进行下载查看。 需要导出的word文件,主要可以分为两种类型。 导出固定内容和图片的word文档 导出表格内容不固定的...
Java Integer变态(bit)函数浅析
前阵子分享过Integer的几个特殊方法,没提原理. 今天来填个坑, 解释下Integer中的几个奇葩函数是怎么工作的. 取正负性(signum) 先看最简单的方法, 根据数字的±,返回[0,1,-1]. 这个如果我们自...
RabbitMQ实现延迟队列
序言 浅谈一下消息队列,随着分布式架构的不断发展,消息队列也逐渐走进到程序员的“生活“中来,在一些特定的业务场景下消息队列是个相当不错的选择。 消息队列的作用(它究竟能做什么) 服务...
Mybatis源码学习一Executor
Executor架构 Caching Executor的作用就是实现二级缓存,使用的是装饰者模式。 装饰者模式:在不改变原有类继承结构的情况下,新建一个对象来扩展原有功能。 Executor具体实现 maven依赖 org.my...