Skip to content

中间件

消息队列

Java体系——中间件 - 消息队列

缓存

数据库中间件

当单机数据库不能满足需求时,需要用到数据库中间件来实现 分库分表、读写分离

  • MyCat(开源分库分表、读写分离)
  • ShardingSphere(Apache 项目,支持 Sharding-JDBC、Sharding-Proxy)
  • Druid 连接池(性能分析、SQL 监控)
  • TiDB(分布式 HTAP 数据库)

必须掌握的点:

  • 分库分表原理与路由算法
  • 分布式事务(XA、TCC、Seata)
  • 数据一致性处理

搜索引擎中间件

当需要快速检索海量数据时,搜索引擎是必要组件。

  • Elasticsearch(ES,全文检索、日志分析)
    • 倒排索引原理
    • 分片与副本机制
    • 集群部署与索引优化
  • Solr(较老稳定,可替代 ES)

注册与配置中心

在微服务架构中,服务发现与配置管理是核心环节。

  • Eureka(Netflix 出品)
  • Consul(支持健康检查、KV 存储)
  • Zookeeper(强一致性,Dubbo 注册中心)
  • Nacos(轻量级服务注册与配置中心,阿里开源)

需要掌握:

  • 服务注册与发现流程
  • 健康检查机制
  • 动态配置刷新

API 网关

用于统一入口、路由、鉴权、限流、负载均衡等。

  • Spring Cloud Gateway(响应式网关)
  • Kong(支持插件扩展)
  • Nginx(反向代理 + 负载均衡)

分布式协调与任务调度

  • Zookeeper(选主、分布式锁、配置管理)
  • Quartz(定时任务调度)
  • Elastic-JobXXL-Job(分布式任务调度)

中间件 - 分布式协调与任务调度


监控与日志

高并发系统需要实时监控与日志分析。

  • Prometheus + Grafana(监控指标可视化)
  • ELK Stack(Elasticsearch + Logstash + Kibana)
  • SkyWalking / Zipkin / Jaeger(分布式链路追踪)