基于pringCloud微服务系统设计方案.pdf

基于pringCloud微服务系统设计方案.pdf

  1. 1、本文档共25页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
微服务系统设计方案 1. 微服务本质 微服务架构从本质上说其实就是分布式架构, 与其说是一种新架构, 不如说是一种 微服 务架构风格。 简单来说, 微服务架构风格是要开发一种由 多个小服务组成 的应用。 每个服务运 行于独 立的进程 ,并且采用 轻量级交互 。多数情况下是一个 HTTP 的资源 API。这些服务 具备独立 业务能力 并可以通过 自动化部署 方式 独立部署 。这种风格使 最小化集中管理 ,从而可以使 用多种 不同的编程语言和数据存储技术 。 对于微服务架构系统, 由于其服务粒度小, 模块化清晰, 因此首先要做的是对系 统整体 进行功能、服务规划 ,优先考虑如何在交付过程中,从 工程实践出发,组织好代码结构、 配置、测试、部署、运维、监控 的整个过程,从而有效体现微服务的独立性与可部署性。 本文将从微服务系统的设计阶段、开发阶段、测试阶段、部署阶段进行综合阐述。 理解微服务架构和理念是核心。 2. 系统环境 名称 版本 说明 JDK 1.8 Spring Boot Spring Framework Ribbon kafka RabbitMQ 3. 微服务架构的挑战 ? 可靠性: 由于采用远程调用的方式, 任何一个节点、 网络出现问题, 都将使得服务调用失败, 随着微服务数量的增多,潜在故障点也将增多。 也就是没有充分的保障机制,则单点故障会大量增加。 ? 运维要求高: 系统监控、高可用性、自动化技术 ? 分布式复杂性: 网络延迟、系统容错、分布式事务 ? 部署依赖性强: 服务依赖、多版本问题 ? 性能(服务间通讯成本高) : 无状态性、进程间调用、跨网络调用 ? 数据一致性: 分布式事务管理需要跨越多个节点来保证数据的瞬时一致性, 因此比起传统的单体 架构的事务,成本要高得多。另外, 在分布式系统中,通常会考虑通过数据的最终一致性来 解决数据瞬时一致带来的系统不可用。 ? 重复开发: 微服务理念崇尚每个微服务作为一个产品看待, 有自己的团队开发, 甚至可以有自 己完全不同的技术、 框架, 那么与其他微服务团队的技术共享就产生了矛盾, 重复开发的工 作即产生了。 没有最好的,只有最适合自己的。 4. 架构设计 4.1. 思维设计 微服务架构设计的根本目的是实现价值交付, 微服务架构只有遵循 DevOps 理念方可进 行的更顺畅,思维方式的转变是最重要的。 实现微服务技术架构, 现有产品需要进行技术上的改进以及相关配套服务的实现, 采用 分阶 段实施、以及试点产品优先实施的策略 ,主要包括如下: 一、技术上的改进: 1、前后端分离, web 前端通过 Http/Https 协议调用微服务的 API 网关,由 API 网关再 经过路由服务调用相应的微服务 2、不同微服务之间通过 REST方式互相调用 3、微服务之间通过消息中间件实现消息交互机制 二、配套服务与功能实现 : 1、需要进行相应的自动化服务实现, 包括自动化构建、

文档评论(0)

151****7744 + 关注
官方认证
内容提供者

该用户很懒,什么也没介绍

认证主体杭州余杭浦振装饰工程队
IP属地浙江
统一社会信用代码/组织机构代码
92330110MA2KEBRJ2Q

1亿VIP精品文档

相关文档