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文件是一种字节码形式的中间代码,该字节码中包...
阅读全文
Netty源码分析之Reactor线程模型源码分析 编程开发

Netty源码分析之Reactor线程模型源码分析

多线程 随着硬件性能的提升,CPU的核数越来越越多,很多服务器标配已经达到32或64核。通过多线程并发编程,可以充分利用多核CPU的处理能力,提升系统的处理效率和并发性能。 从2005年开始,随着多核...
阅读全文
帖子中心,数据库架构优化与实践 系统架构

帖子中心,数据库架构优化与实践

本文将以“帖子中心”为例,介绍“1对多”类业务,随着数据量的逐步增大,数据库性能显著降低,数据库水平切分相关的架构实践: 如何来实施水平切分 水平切分后常见的问题 典型问题的优化思路及实践 一、什么是...
阅读全文