代码改变世界

[置顶]一文搞懂JVM内存结构+GC

2020-03-01 22:17 by 学学技术, 309 阅读, 0 推荐, 收藏, 编辑
摘要:大家都知道,java不需要开发者写代码来申请、释放和管理内存,jvm在运行时帮助我们做了这个事情,即便如此,我们还是需要了解jvm的内存结构,以便排查各种和内存有关的问题,比如oom,性能调优 阅读全文

ThreadPoolExecutor四种拒绝策略

2021-01-09 21:55 by 学学技术, 615 阅读, 0 推荐, 收藏, 编辑
摘要:当线程数超过maximumPoolSize时需要拒绝请求,jdk中自带的拒绝策略均实现了java.util.concurrent.RejectedExecutionHandler接口,有四种策略: 1、AbortPolicy 默认的拒绝策略。直接抛出 java.util.concurrent.Rej 阅读全文

一文搞懂jvm内存结构

2020-02-19 16:01 by 学学技术, 867 阅读, 0 推荐, 收藏, 编辑
摘要:一、jvm是干什么的? 大家都知道java是跨平台语言,一次编译可以在不同操作系统上运行,怎么做到的呢,看下图: javac把写的源代码(java文件),编译成字节码(class文件),字节码部署到linux/windows/..上,被对应的jvm解释成机器码运行,jvm的工作就是这个。 大家都知道 阅读全文

一文读懂什么是一致性hash算法

2020-02-17 15:49 by 学学技术, 332 阅读, 0 推荐, 收藏, 编辑
摘要:Hash,一般翻译做散列、杂凑,或音译为哈希,是把任意长度的输入通过散列算法变换成固定长度的输出,该输出就是散列值。这种转换是一种压缩映射,也就是,散列值的空间通常远小于输入值的空间,不同的输入可能会散列成相同的输出,所以不可能从散列值来确定唯一的输入值。看是不是有点像分类,按照一定规则算出来一个分 阅读全文

使用Redis需要注意的几点

2019-03-31 22:50 by 学学技术, 2670 阅读, 0 推荐, 收藏, 编辑
摘要:Redis作为缓存中间件,被广泛应用在各类系统,用来提升系统性能和吞吐,下面总结几点开发人员在使用Redis时需要考虑的几个关键点: 一. key的设计 1. key命名规范:为了避免不必要的麻烦,我们要给系统定义一套key的设计规范。通俗点举个例子,我们在电脑上写好了一篇文章,需要保存起来,这时候 阅读全文