0
点赞
收藏
分享

微信扫一扫

uniapp+微信小程序+nodejs问题记录

南柯Taylor 2024-02-03 阅读 14

微服务扩展性:水平扩展 vs 垂直扩展

特点水平扩展垂直扩展
扩展单位增加微服务实例增加单个实例的资源 (CPU,内存)
方向向外,增加节点向上,增加单个节点的资源
复杂性随着实例数量的增加,管理难度更大管理更简单,但资源限制容易达到
容错性容错性更高,一个实例的故障不会影响其他实例容错性较低,单个实例故障可能会影响整个服务
成本通常更昂贵,因为需要增加基础设施刚开始可能更便宜,但随着资源需求增加,成本可能会上升
性能性能可以随着实例的增加线性提升性能提升可能受限于单个节点的瓶颈
扩展速度通过添加新实例可以快速扩展扩展速度可能较慢,需要重新启动或调整现有实例
微服务隔离保持微服务之间清晰的隔离当资源在单个节点上共享时,微服务之间的边界可能模糊
监控和日志记录需要跨多个实例进行监控和日志记录监控和日志记录集中在单个实例上
适用场景高流量且负载不可预测的服务,无状态服务负载可预测的服务,有状态服务,需要高 CPU 或内存资源的服务

额外注意事项:

  • 由于其弹性和容错性,水平扩展通常更适用于无状态微服务。
  • 垂直扩展对于有状态微服务或负载可预测的服务可能是有效的。
  • 也可以结合水平和垂直扩展的混合方法。
  • 选择水平扩展还是垂直扩展取决于具体的应用需求和限制。
举报

相关推荐

0 条评论