付威

LV0
发表了文章

一行代码引发的性能暴跌 10 倍

上面的一个简单的代码是测试 Java 创建对象的性能,如果没有 System.out.println(user); 输出的时间是 300ms左右,如果加上性能是...

付威
发表了文章

ReentrantLock 源码解析

通过上面分析,我们可以得到 RReentrantLock 的整个流程,具体简化流程如下:

付威
发表了文章

Java 对象深入探究

invokespecial:调用超类构建方法, 实例初始化方法, 私有方法

付威
发表了文章

synchronized 锁的升级过程

付威
发表了文章

synchronized 关键字

Synchronized 是 Java 中的一种锁的方式,是在 JVM 层面一种锁。在 jdk 1.6以前是一种重量级锁,在经历过优化后 Synchronize...

付威
发表了文章

Big-Edian 存储和 Little-Edian 存储

在 JVM 虚拟机规范中有对 class 字节内容的顺序的一句话,多字节数据项总是按照 Big-Endian 的顺序进行存储,刚开始不太明白,只是根据规范解析了...

付威
发表了文章

Redis底层原理--05. Redis 数据库

Redis 有四个命令可以设置键的生存时间(可以存活多久)和过期时间(什么时候到期):

付威
发表了文章

Redis底层原理--04. Redis 功能的实现

WATCH 命令用于在事务开始之前监视任意数量的键:当调用 EXEC 命令执行事务时,如果任意一个被监视的键已经被其他客户端修改了,那么整个事务不再执行,直接返...

付威
发表了文章

MySQL 事务日志

在写日志的时候,单个日志如果过大,对于读写和同步都会产生影响,所以在日志变大的时候,需要对日志进行一个分组。

付威
发表了文章

MySQL 主从同步

主从复制的根本原理是从 master 服务器上面的数据,通过一定的方式同步到 slave 服务器上面。基本过程如下图:

付威
发表了文章

简述 G1 垃圾回收器和 OOM 问题的排查

最近又碰到的 oom 的问题,一直在尝试定位中,由于现实使用的 G1 的垃圾回收器。所以今天打算线上的排查历程和方案查询出来。

付威
发表了文章

MySQL 索引失效问题

除了上面的几个明显的问题外,还有索引的选择问题。MySQL 在执行一段 sql 的时候,会先决定使用哪一个索引,如果 选了一个性能比较差的索引,即使走了索引,也...

付威
发表了文章

MySQL 分库分表的方式

对于分库分表来说,具体有两种方式:垂直拆分和水平拆分。 垂直拆分主要是业务的细化和独立,和业务联系比较密切。所以本文只讨论更通用的水平拆分。

付威
发表了文章

简单聊聊 MyCat 分库分表

MyCat 是基于服务器代理模式的数据库分库的中间件,原理是对 SQL 进行转发,具体的架构图如下:

付威
发表了文章

Linux TOP 命令详解

当前时间(date)、系统已运行时间(last reboot)、当前登录用户的数量(who )、最近5、10、15分钟内的平均负载

付威
发表了文章

一个正则表达式导致 CPU 高的问题排查过程

这篇文章记录一个正则表达是导致 CPU 高的问题排查。由于无法直接使用线上的代码测试,所以我自己把代码整理了下来,具体代码如下:

付威
发表了文章

使用 docker-compose 打包多个应用

docker file 是 使用 docker 部署应用的命令。 具体的命令可以参考 Docker 命令.

付威
发表了文章

Redis系列--布隆过滤器

如果在缓存中查询不到数据,会直接到 DB 中查询,查询的数据再插入到缓存中。例如我们根据 orderId 查询对应的订单,具体伪代码如下:

付威
发表了文章

Redis底层原理--01. Redis 中的数据结构

在 C 语言中,字符串可以用一个 \0 结尾的 char 数组来表示。 比如说,hello world 在 C 语言中就可以表示为 “hello world\0...

付威
发表了文章

Redis底层原理--02. 内存映射数据结构

整数集合(intset)用于有序、无重复地保存多个整数值,它会根据元素的值,自动选择该用什 么长度的整数类型来保存元素

付威

个人简介

个人成就

扫码关注云+社区

领取腾讯云代金券