微服务架构(二) 微服务需要考虑的问题
2022-08-27 本文已影响0人
mafa1993
- 服务间交互, 各模块之间一般以接口方式调用, 选择合适的通讯协议, 制定接口的输入输出规范
- 服务的发布订阅: 服务需要有个类似登记的地方, 即注册中心
- 服务监控: 需要一个贯穿业务埋点 数据收集 数据处理和展示的监控, 需要监控qps(调用量), avgtime(平均耗时), 以及p999(99.99%请求的耗时)
- 服务治理: 服务间依赖变的复杂, 减少依赖的影响, 增加服务熔断, 设定一个阈值, 一旦超过这个值直接返回
- 故障定位: 服务相互依赖, 在出现问题时, 如何快速定位那个服务的问题, 需要进行标记
拆分颗粒度: 不易过细, 难以治理, 一个人三个为准较为合理
我现在对拆分的考量:
一是业务维度聚类,业务和数据关系密切的应该放在一起。
二是功能维度聚类,公共功能聚合为一个服务。
三是人员聚类,这是个实际中的考量,如果某几个业务就是这几个人比较熟,那么最好放在一起,未来开发部署都好办。
四是性能聚类,性能要求高的并发大的和性能要求低的并发小的,要分开为不同的服务,这样部署和运行都独立,好维护。