微服务架构最佳实践

发布时间:2020-07-11 01:17:09 作者:映成
来源:网络 阅读:483

方法篇

服务粒度

拆分方法

1. 基于业务逻辑拆分

2. 基于可扩展拆分

3. 基于可靠性拆分

好处

例如,日志上报一般都属于非核心服务,但是在某些场景下可能有大量的日志上报,如果系统没有拆分,那么日志上报可能导致核心服务故障;拆分后即使日志上报有问题,也不会影响核心服务

核心服务的功能逻辑更加简单,存储的数据可能更少,用到的组件也会更少,设计高可用方案部分情况下要比不拆分简单很多

将核心服务拆分出来后,核心服务占用的机器、带宽等资源比不拆分要少很多。因此,只针对核心服务做高可用方案,机器、带宽等成本比不拆分要节省较多

4. 基于性能拆分

以上拆分,可以根据实际情况自由排列组合

基础设施

微服务架构最佳实践


实施微服务

按优先级来搭建基础设施

  1. 服务发现、服务路由、服务容错:这是最基本的微服务基础设施

  2. 接口框架、API网关:主要是为了提升开发效率,接口框架是提升内部服务的开发效率,API网关是为了提升与外部服务对接的效率

  3. 自动化部署、自动化测试、配置中心:主要是为了提升测试和运维效率

  4. 服务监控、服务跟踪、服务安全:主要是为了进一步提升运维效率

基础设施

自动化测试

自动化部署

配置中心

接口框架

微服务架构最佳实践


API网关

服务发现

服务发现主要有两种实现方式:自理式和代理式

1. 自理式

微服务架构最佳实践


2. 代理式

微服务架构最佳实践


服务路由

服务容错

服务监控

作用

通常情况下,服务监控需要搜集分析大量的数据,因此建议做成独立的系统,而不要集成到服务发现、API网关等系统中

服务跟踪

服务安全

微服务架构最佳实践


推荐阅读:
  1. 微服务是什么?微服务架构又是什么?
  2. AWS 架构最佳实践(十二)

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

微服务 架构 java

上一篇:(四)企业部分之lnmp环境的搭建:PHP

下一篇:有未经处理的异常: 0xC0000005: 读取位置 0xFFFFFFFC 时发生访问冲突

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》