Netty内存池泄漏问题 编程开发

Netty内存池泄漏问题

为了提升消息接收和发送性能,Netty针对ByteBuf的申请和释放采用池化技术,通过PooledByteBufAllocator可以创建基于内存池分配的ByteBuf对象,这样就避免了每次消息读写都...
阅读全文
Netty开发redis客户端 redis

Netty开发redis客户端

我们可以使用redis-cli这个客户端来操作redis,也可以使用window的命令行telnet连接redis。本文,我们的目标是使用netty来实现redis客户端,实现目标为: 1. 启动ne...
阅读全文
FullGC的案例二 编程开发

FullGC的案例二

这是笨神JVMPocket群里一位名为“ 云何*住 ”的同学提出来的问题,问题现象是CPU飙高并且频繁FullGC。 重现问题 这位同学的业务代码比较复杂,为了简化业务场景,笔者将其代码压缩成如下的代...
阅读全文
FullGC案例一 编程开发

FullGC案例一

需求背景 将用户已安装APP数据从MySQL的中迁移到MongoDB的中.MySQL中存储方式比较简单,每个用户每个已安装的APP一行记录,且数据模型对应AppFromMySQL。迁移到MongoDB...
阅读全文
必须掌握的30种SQL语句优化 编程开发

必须掌握的30种SQL语句优化

1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。 2.应尽量避免在 where 子句中使用!=或<>操作符,否则将引擎放弃使用索...
阅读全文
常见Serialize技术探秘(XML、JSON、JDBC byte编码、Protobuf) 编程开发

常见Serialize技术探秘(XML、JSON、JDBC byte编码、Protobuf)

目前业界有各种各样的网络输出传输时的序列化和反序列化方案,它们在技术上的实现的初衷和背景有较大的区别,因此在设计的架构也会有很大的区别,最终在落地后的:解析速度、对系统的影响、传输数据的大小、可维护性...
阅读全文
如何保护Java程序 防止Java反编译 编程开发

如何保护Java程序 防止Java反编译

架构师之旅 2018-10-30 12:01:00 Java是一种跨平台的、解释型语言。Java 源代码编译中间“字节码”存储于class文件中。Class文件是一种字节码形式的中间代码,该字节码中包...
阅读全文