Notes
latest
操作系统
进程与线程
僵尸进程
进程调度算法
死锁
IO模型
文件描述符
epoll
共享内存
虚拟内存
JAVA IO
JAVA线程模型
常用命令
查看日志
网络
网络协议
HTTP
TCP
输入URL
网络编程
负载均衡
Nginx
ICMP
数据库
Log
ACID
MVCC
事务隔离级别
MySQL锁
两阶段提交
语句执行流程
三阶段提交
innoDB储存
索引
order by
主从复制
MySQL优化
三大范式
删除表命令
Mybatis
红黑树
JAVA
JAVA基础
集合
静态与动态绑定
动态代理
反射
拷贝
四种引用
ArrayList
HashMap
ConcurrentHashMap
JVM
类加载机制
运行时数据区
堆
方法区
对象实例化
String 的细节
垃圾回收器概述
垃圾回收器
G1垃圾回收器
GC
GC日志分析
引用类型、内存泄露、安全点
双亲委派机制
Tomcat 中的隔离与双亲委派机制
常见溢出
问题排查
设计模式
概述
设计模式应用
单例模式
建造者模式
原型模式
多线程
JMM
volatile
双重检测锁
ThreadLocal
CAS
AQS
ConditionObject
synchronized
ObjectMonitor
ReentrantLock
CountDownLatch
CyclicBarrier
synchronized 与 reentrantLock
创建线程方式
Thread
Runnable
Callable
Future
FutureTask
Thread类
线程池
Spring
Bean
IoC
AOP
tiny-spring
注解
事务
SpringMVC
SpringBoot
Redis
redis线程模型
持久化
reids
redis高可用
Redis 事务
分布式锁
跳跃表
布隆过滤器
缓存一致性
订阅与发布
分布式
CAP
BASE
RAFT
Paxos
两阶段提交
三阶段提交
TCC
分布式锁
RPC
消息队列
消息队列问题
分布式ID
项目相关
项目介绍
cookie和session
分布式锁:redisson
OAuth2
Feign
线程池
线程池异步查询
CompletableFuture
分布式事务
幂等
令牌验证
RabbitMQ
消息队列的使用
消息可靠
秒杀
高并发
瓶颈
Docker
算法
大数据题
背包
算法
Arrays.sort
Notes
Docs
»
秒杀
Edit on GitHub
秒杀
¶
redis 预热,定时任务保存未来秒杀商品信息
用随机码替换商品ID,保护机制,避免恶意请求
使用分布式信号量,商品数量作为许可数量
秒杀流程
¶
登录判断
合法性校验
秒杀时间
随机码
幂等性
获取信号量
tryAcquire:非阻塞获取
快速创建订单
异步发送MQ消息
秒杀思路
¶
独立模块
秒杀连接、信息加密
库存预热,快速减库存
动静分离
拦截恶意请求
流量削峰
限流、熔断、降级