本项目主要给出一些常见分布式技术的demo,供学习、参考。
各个模块用途如下:
技术 | 模块 | 状态 | 备注 |
---|---|---|---|
一致性哈希算法 | consistent-hash | done | |
分布式锁 | distributed-lock | doing | |
分布式事务 | distributed-transaction | done | |
一致性算法 | distributed-consensus-algorithm | doing | |
领导者选举 | leader-election | doing | |
数据库数据分片 | db-data-sharding | done | |
nginx应用 | to do | ||
netty使用 | 使用netty仿写微信IM | done | |
RPC | rpc-learning rpcfx |
done | 如何自己动手 写一个RPC |
MQ相关 | mq-learning | done | 消息队列高手课 作业汇总,常见MQ 使用demo |
分布式链路追踪 | monitor-by-java-agent | done | 如何自己动手 写一个分布式 链路追踪框架 |
优雅停机 | Springboot 优雅停止服务的几种方法 代码shutdown demo 如何做到优雅停机思维导图 |
done | |
断路器 | circuit-breaker | done | 常见断路器 的使用 |
网关 | api-gateway | doing | 常见网关的 使用 |
分布式缓存 | |||
在考虑中,可能涉及如下主题:
- 分布式缓存相关
- 比如redis的高级应用、最佳实践、配置等?
- 高可用
- nginx使用
- 如何使用脚本做限流、负载均衡等
- ......
- 芋道源码
- 为了节省时间,部分示例直接拷贝了芋道源码 https://github.com/YunaiV/SpringBoot-Labs 中的代码,这样的例子我会在相应文件夹README中注明。芋艿大佬这个库是真的不错,博客文章写的也很清晰,大家可以去围观下。