蜗牛大师

吴庆龙的学习笔记

导航

2023年5月6日 #

MySQL备份命令帮助手册

摘要: 借助于 mysqldump 命令可以进行数据库的备份。 用法: mysqldump [OPTIONS] database [tables] 或:mysqldump [OPTIONS] --databases [OPTIONS] DB1 [DB2 DB3...] 或:mysqldump [OPTION 阅读全文

posted @ 2023-05-06 15:18 蜗牛大师 阅读(87) 评论(0) 推荐(0) 编辑

2022年9月6日 #

基于Redis 的信号量实现

摘要: 造轮子的过程也是学习的过程。 如果公司的 Redis 不支持发布订阅指令的话,是没法用 Redisson 的,因为 Redisson 的大部分功能都依赖于 Redis 的发布订阅指令。 这是完整实现的代码仓库:https://gitee.com/wu0916/redis-semaphore 下面是获 阅读全文

posted @ 2022-09-06 15:37 蜗牛大师 阅读(237) 评论(0) 推荐(0) 编辑

基于Redis的token限流实现

摘要: 造轮子的过程也是学习的过程。 如果公司的 Redis 不支持发布订阅指令的话,是没法用 Redisson 的,因为 Redisson 的大部分功能都依赖于 Redis 的发布订阅指令。 这是完整实现的代码仓库:https://gitee.com/wu0916/redis-rate-limiter 下 阅读全文

posted @ 2022-09-06 15:15 蜗牛大师 阅读(144) 评论(0) 推荐(0) 编辑

2021年11月26日 #

Maven入门

摘要: 开发久了,总结一下吧。 一、Maven配置阿里云源 阿里云源文档地址:https://developer.aliyun.com/mvn/guide 编辑 ~/.m2/settings.xml 文件: <settings> <mirror> <id>aliyunmaven</id> <mirrorOf 阅读全文

posted @ 2021-11-26 20:23 蜗牛大师 阅读(77) 评论(0) 推荐(0) 编辑

Gradle入门

摘要: 本人也是初次接触到 Gradle,之前一直用 Maven, 关于 Gradle 的运行原理及概念就不多说了,主要介绍一下,用 Gradle 如何实现 Maven 的各种功能吧。 使用的 Gradle 版本是 7.2。 主要的配置就是 gradle.build 这个文件。 配置文档:https://d 阅读全文

posted @ 2021-11-26 09:56 蜗牛大师 阅读(188) 评论(0) 推荐(0) 编辑

2021年6月28日 #

带你阅读字节码

摘要: 什么是字节码? java bytecode 由单字节(byte)的指令组成,理论上最多支持 256 个操作码(opcode),实际上 Java 只使用了 200 个左右的操作码,还有一些操作码则保留给调试操作。 根据指令的性质,主要分为四大类: 栈操作指令,包括与局部变量交互的指令。 程序流程控制指 阅读全文

posted @ 2021-06-28 20:09 蜗牛大师 阅读(409) 评论(0) 推荐(1) 编辑

2021年4月17日 #

Redis-Hash槽

摘要: Redis 集群并没有直接使用一致性哈希,而是使用了哈希槽 (slot) 的概念,Redis 没有直接使用哈希算法 hash(),而是使用了crc16校验算法。 槽位其实就是一个个的空间的单位。其实哈希槽的本质和一致性哈希算法非常相似,不同点就是对于哈希空间的定义。一致性哈希的空间是一个圆环,节点分 阅读全文

posted @ 2021-04-17 14:33 蜗牛大师 阅读(1262) 评论(0) 推荐(0) 编辑

缓存的击穿、穿透、雪崩

摘要: 1、缓存击穿 击穿,是从一个孔中击穿过去,意思就是有大量的请求同时请求一个缓存中没有的数据,数据库的压力瞬间暴增。 解决方案: 若缓存数据基本不变,则设置该热点数据永不过期。 使用分布式锁或的方式保证仅有一个请求去请求数据库,然后放入缓存,剩余的请求在锁释放后从缓存中获取。 使用定时任务在缓存过期前 阅读全文

posted @ 2021-04-17 14:31 蜗牛大师 阅读(115) 评论(0) 推荐(0) 编辑

2021年4月7日 #

浅谈RabbitMQ 、Kafka及RocketMQ

摘要: 一、为什么需要消息队列? (1)、不同系统之间的解耦 (2)、削峰 可以保证下游服务的正常运行,不能因为有大量的请求直接把下游服务给搞挂了。 (3)、异步 将非必要业务写入MQ,加快响应速度。 但也要了解引入消息队列导致的问题: (1)、增加了系统的复杂度。比如:如何解决消息的重复消费、消息的丢失以 阅读全文

posted @ 2021-04-07 14:56 蜗牛大师 阅读(2427) 评论(0) 推荐(0) 编辑

2021年3月30日 #

关于HashMap的一些思考

摘要: 一、HashMap的负载因子的作用 当 HashMap 中的元素个数(包含链表、红黑树上的元素)达到数组长度的0.75倍的时候,开始扩容。 二、HashMap的负载因子为什么是0.75 主要是为了提高空间利用率和减少查询成本(也可以说是尽可能减少hash冲突)。 三、为什么槽位数必须使用2^n 如果 阅读全文

posted @ 2021-03-30 10:16 蜗牛大师 阅读(681) 评论(0) 推荐(0) 编辑