随着流量的增加和稳定性要求的增加,服务也自然的会从单机变为分布式。比如单机的redis,变为分布式的redis。
此过程中,共性的部分,总结如下:
共性的考虑点:自动化运维难易程度
单服务
刚开始的时候,单一服务部署在单一机器上。
优点:
- 运维简单
- 问题定位方便
缺点:
- 单点问题 / 数据恢复
- 热点问题
- 高可用HA方法,是双机热备
Proxy + 单服务
流量增加后,增加Proxy服务来进行业务Hash,后面接多个单服务机器。
优点:
- 有了Proxy层后,单服务可以业务透明升级
缺点:
- 单服务升级成本比较高
- rt增加,多走了Proxy层;会引导高负载下超时
- 排查问题难度增加,不确定对应着后面哪台单服务
服务集群Cluster
各服务官方,都会逐渐的推出了自己的分布式解决方案
优点:
- 比Proxy + 单服务 的性能更高(这个是最低要求吧)
缺点:
- 有中心/无中心,维护难度增加
服务运维portal
内部服务增加一个portal运维页面,满足业务方自助接入、测试、问题排查、性能监控的需求
——————————————————————————————
自己研发
使用开源的缺点:
- 开源每个模块都有独立的监控工具和框架,平台重构时原工具会不兼容
- 没有节约太多成本,不利于公司技术积累
解决方法:
- 自研
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于