Docker 【 技术架构(2)】

接上文:Docker 【 技术架构(1)】-CSDN博客


一、冷热分离架构

遇到的问题:某些数据被频繁访问(如热门商品),反复查询数据库浪费资源。

解决方案缓存热点数据

缓存层级

  • 本地缓存:Memcached(单机)

  • 分布式缓存:Redis(集群)

缓存常见问题

问题 描述 解决方案
缓存穿透 查询不存在的数据,直接打到DB 布隆过滤器
缓存击穿 热点key突然失效,大量请求打到DB 互斥锁、逻辑过期
缓存雪崩 大量key同时失效 随机过期时间、多级缓存
热点集中失效 某时段大量缓存同时过期 分散过期时间

🌰 例子:学校门口的奶茶店,把最受欢迎的珍珠奶茶提前备好(缓存),不用每次都现做。


二、垂直分库架构

遇到的问题:单库数据量太大,查询越来越慢。

解决方案按业务拆分数据库

分库策略

  • 评论数据按商品ID hash路由

  • 支付记录按小时创建表

  • 确保每张实时操作的表数据量足够小

此时已可称为"分布式数据库" ,由多个组件协作:

  • 分库分表管理 → MyCat

  • SQL解析 → 单机数据库

  • 读写分离 → 网关+消息队列

  • 结果汇总 → 数据库接口层

相关软件 :Greenplum、TiDB、PostgreSQL XC、华为LibrA

🌰 例子:图书馆把书按类别分到不同房间(用户/商品/交易),找书时先去对应的房间,效率大幅提升。


三、 微服务架构

遇到的问题:团队壮大,业务复杂,代码耦合严重,一个模块出问题影响全局。

解决方案微服务化

特点

  • 不同团队独立维护自己的服务

  • 服务间通过 Gateway、消息总线 通信

  • 公共业务(如用户管理)可抽离为公共服务

相关软件 :Spring Cloud、Dubbo

🌰 例子 :大公司把业务分成独立事业部,用户部、商品部、交易部各自运营,通过内部系统协作。


四、容器编排架构

遇到的问题

  • 资源利用率低,很多资源应对短时高并发,平时闲置

  • 需要动态扩缩容

  • 开发/测试/生产环境需要隔离

  • 运维工作量巨大

核心概念

  • Docker:集装箱,把应用+依赖打包成镜像

  • K8S:货船,根据集装箱大小、货物情况合理组织部署

集群划分

  • 生产集群:线上正式环境

  • 研发集群:通过命名空间隔离不同应用

相关软件 :Docker、Kubernetes

相关推荐
heimeiyingwang8 小时前
【架构实战】异步化改造:线程池与消息队列的取舍
架构
Mr.HeBoYan8 小时前
一次持续三天才出现的丢包故障——深入解析 DPDK Memory Ordering、rte_ring 与 CPU Memory Barrier (下)
linux·网络·算法·架构·dpdk
锋行天下9 小时前
打造企业内部知识库系统RAG全栈项目
前端·后端·架构
关关长语10 小时前
Wsl解决MySQL容器跨域权限问题
mysql·docker·容器
这个DBA有点耶10 小时前
索引碎片与统计信息维护:执行计划突然变差的隐形杀手
mysql·程序员·架构
Discipline~Hai10 小时前
ARM01-ARM体系架构
linux·c语言·arm开发·架构
XUHUOJUN11 小时前
AKS 不是安装在 Windows Server 上,而是运行在 Windows Server 之上的 Azure 平台能力
windows·架构·k8s·azure local·azure stack
Cosolar12 小时前
AI Agent 架构原理详解:从一次提问到任务完成的完整闭环
人工智能·后端·架构
IT小辉同学12 小时前
# Milvus v3.0-beta docker-compose 启动失败完整排错教程
docker·eureka·milvus
会周易的程序员12 小时前
Libnodave S7 通信库:架构设计与实现解析
linux·c++·物联网·架构·c·s7·工业协议