使用Flyway优雅地管理数据库表结构历史版本

0. 引言 在开发周期较长,或者需求变更频繁,涉及多版本发布的项目中,我们常常遇到这样的问题: 改了表结构,开发环境执行了,忘记保存,发测试、生产环境时又要重写一遍DDL 多人开发,都改了表结构,无法自动更新到自己的本地库 新环境部署,之前改过的表结构,又要再改一遍…

hello hello 发布于 2023-06-27

总结几点memcached使用中踩的一些坑

背景 线上启用memcached(以下简称mc)作为热点缓存组件已经多年,其稳定性和性能都经历住了考验,这里记录一下踩过的几个坑。 大key存储 某年某月某日,观察mysql的读库CPU占比有些异常偏高,去check慢查询log,发现部分应有缓存的慢sql居然存在几秒执行一次情况,不符合缓存数小时的代码逻辑。…

hello hello 发布于 2023-06-27

常用的数据库连接池、配置参数及相应的调优方法

数据库连接池是一种用于管理和维护数据库连接的技术,不同类型的数据库连接池具体的配置参数和调优方法也是有所不同的。下面分别举例 C3P0、DBCP、HikariCP 和 Druid 的常用配置信息和调优建议: C3P0 常用配置参数: # 连接池中容许的最小连接数目 c3p0.minPoolSize=5 # 连接池中容许的最大连接数目…

hello hello 发布于 2023-06-26

如何使用 JMeter 实现分布式压测

Meter 分布式压测是指使用多台机器协同工作,对被测系统进行大规模的并发测试。这种方案可以有效提高测试效率和覆盖面,并能够更好地模拟真实用户场景。JMeter 分布式压测需要一个 Master 节点来控制整个测试过程,以及多个 Slave 节点来执行真正的压测任务。 下面是使用 JMeter 进行分布式压测的基本步骤: 1. 在 JMeter…

hello hello 发布于 2023-06-21

JVM 监控工具 jstat 的使用介绍

jstat 是 Java 自带的一个命令行工具,用于监控 JVM 运行时的状态信息。它可以通过以下格式的命令来调用: jstat [option] <vmid> [<interval> [<count>]] 其中,option 表示需要查询的信息类型,如 -gc, -class, -compiler 等;vmid 表示目标 JVM 的进程 ID…

hello hello 发布于 2023-06-21

MySQL主从复制的搭建

MySQL主从复制是一种常用的数据库高可用性解决方案,可以提高数据库的可用性和性能。本教程将介绍如何搭建MySQL主从复制。 1、MySQL 支持的复制类型 基于语句的复制(STATEMENT):在主服务器上执行的 SQL 语句,在从服务器上执行同样的语句。MySQL 默认采用基于语句的复制,效率比较高。 传输效率高,减少延迟。…

hello hello 发布于 2023-06-21

20亿手机号存储检索去重

最近看到 一个20亿手机号存储检索的问题,这里做一下记录,方便学习 1、场景描述 在20亿个随机整数中找出某个数m是否存在其中,并假设32位操作系统,4G内存。 1byte=8bit 1kb=1024byte 1mb=1024kb 1gb=1024mb java中 int类型占用4个字节=4*8=32bit 如果将20亿个整数放入内存中,需要占用多少内存?…

hello hello 发布于 2023-06-16

Lock源码学习笔记

1、基础使用 //声明锁,默认为true非公平锁 static Lock lock1=new ReentrantLock(); public static void main(String[] args) { try{ lock1.lock(); // todo }catch (Exception e){ e.printStackTrace();…

hello hello 发布于 2023-06-16

Java面试总结

1. HashMap 1.8与1.7的区别 (1) 扩容因子默认为什么是0.75 如果扩容因子过高,空间利用率提高但是哈希冲突概率增加;如果扩容因子过低,会造成频繁扩容,哈希冲突概率降低,但是空间利用率变低。选择0.75是基于泊松分布,是时间和空间成本上寻求的一种折中选择 (2)为什么链表长度为8要转化为红黑树 首先和 hashcode…

hello hello 发布于 2023-06-07

JUC 常用4大并发工具类万字详解,收藏起来!

什么是 JUC? JUC 就是 java.util.concurrent 包,这个包俗称 JUC,里面都是解决并发问题的一些东西,该包的位置位于 java 下面的 rt.jar 包下面 JUC 中 4 大常用并发工具类 CountDownLatch CyclicBarrier Semaphore ExChanger CountDownLatch…

hello hello 发布于 2023-06-03
上一页 下一页