阿里云「飞天发布时刻」2024来啦!新产品、新特性、新能力、新方案,等你来探~ 了解详情
写点什么

微服务设计介绍

  • 2014-06-16
  • 本文字数:682 字

    阅读完需:约 2 分钟

长久以来,我们一直在构建着一体化的软件,后来转向了 SOA ,不过依然存在问题,现在我们又遇到了微服务。近日, Russ Miles 在使用 Java 平台设计与构建抗脆弱的微服务介绍中谈到了软件开发的现状。

Russ 比较了大圆石、岩石与鹅卵石,其中像大圆石这样的大块石料是很难变化或是移动的。SOA 则类似于岩石,依然难以移动,无法满足我们的期望。微服务类似于鹅卵石,是很容易移动的。

Russ 认为抗脆弱意味着我们需要对系统进行分解;我们不仅要拥抱变化,还要依靠变化而成长,这才才会变得越来越好。若想达成这一点,首要的就是简单性,通过很多小东西来完成一件事,实现一个目标。在向微服务转变时,设计简单的组件与系统是关键所在。我们要聚焦在组件的演化上,以及如何构建系统才能支持演化与改变。

Russ 将微服务定义为单一目的的服务,它只做一件事,并且粒度划分良好,支持系统的演化以及你认为在运行期与设计期重要的东西。主要的焦点在于要能构建适应性良好的软件,只有粒度足够细,能够支持架构变化的差异性才能做到。

微服务是以正确的方式做 SOA 的事情么?Russ 认为 SOA 的一个问题在于相对于 UNIX 管道来说这个术语包含了太多的内容。他认为管道是非常重要的,是驱动微服务创建的主要动力。在 SOA 中,特别是按照层次组织的服务,我们丧失了数据流,因为这是在服务内部编排的。

Russ 听到的一个很大的抱怨就是将一个系统划分为多个小服务时遇到的管理与监控问题。他给出的建议是无论成功抑或失败都不要构建发送消息的服务,而是让其发送“可执行的信息”,服务不仅应该告知自身的问题,还要提供解决方案。

查看英文原文: An Introduction to Microservices Design

2014-06-16 23:042003
用户头像

发布了 88 篇内容, 共 258.5 次阅读, 收获喜欢 8 次。

关注

评论

发布
暂无评论
发现更多内容

还不知道什么是生成式 AI?两门课带你从了解到使用

科技热闻

宁波银行:在「金融科技」引擎上,沉浸式提效减负

LigaAI

研发管理 IDEA LigaAI 研发协作 提效

汇聚数据库创新力量 打造千行万业数据基石,openGauss Summit 2023即将召开

彭飞

SiteSucker for mac(网站下载工具) v5.1.13完美激活版

mac

网站下载工具 苹果mac Windows软件 SiteSucker

通过小程序实现App灰度测试的好处

Geek_2305a8

探索前端构建可视化应用的思路

这我可不懂

前端开发 低代码 JNPF

每日一题:LeetCode-662. 二叉树最大宽度

半亩房顶

面试 算法 LeetCode 二叉树 BFS

生成式 AI,从陌生到使用,仅需两门课

科技热闻

技术人2023年终总结,大模型对小城市程序猿的深远影响|社区征文

百里丶落云

AI #大模型

投资引路人:认知体系决定成败

少油少糖八分饱

投资 认知 能力圈 反人性 人性

首个离散元仿真软件EDEM好学吗?有什么学习技巧?

智造软件

仿真软件 仿真工具 离散元 离散元仿真 仿真分析

开发一个免费的App操作流程

Geek_2305a8

空投 | Mint Blockchain 将于 2024 年 1 月 10 号启动 Mint Genesis NFT 空投活动

NFT Research

blockchain NFT\ 空投

Principle for Mac(交互式UI原型设计神器)v6.33中文激活版

影影绰绰一往直前

KaiwuDB 时序引擎数据去重功能详解

KaiwuDB

KaiwuDB 数据去重

SketchUp Pro 2023 for mac中文激活版(su草图大师 专业的3D建模软件)

影影绰绰一往直前

HttpClient5升级笔记--API篇

FunTester

JetBrains pycharm pro 2023 for mac v2023.3.2中文激活版

影影绰绰一往直前

Proxifier for Mac(全局代理客户端)v3.11注册版

影影绰绰一往直前

低代码可视化工具10分钟完成应用开发

互联网工科生

软件开发 低代码平台 可视化开发 JNPF

生成式AI:未来的发展方向是什么?

不在线第一只蜗牛

人工智能 生成式人工智能 技术 优化体系

称重驱动二次开发教程

EquatorCoco

技术 开发 系统 电子称重系统

如何做代币分析:以 LINK 币为例

Footprint Analytics

区块链 加密货币 代币 LINK

PVP2 ProVideoPlayer2 for Mac(PVP2多屏幕演示投放软件) v2.1.6永久激活版

mac

苹果mac Windows软件 ProVideoPlayer2 多功能演示工具

inBuilder&openEuler,基于毕昇 JDK,提升大规模Java应用的启动性能

inBuilder低代码平台

低代码 openEuler Java.

iStat Menus for mac(mac系统状态监控工具)v6.73 (1230)中文版

影影绰绰一往直前

使用代码生成工具快速开发应用-结合后端Web API提供接口和前端页面快速生成,实现通用的业务编码规则管理

快乐非自愿限量之名

Vue 前端 Web 后端 代码生成

分享5个程序员必备的终端工具

伤感汤姆布利柏

前端 终端 低代码 JNPF

低代码开发平台:数字化转型的助推器

高端章鱼哥

软件开发 低代码 数字化

“双十一、二” 业务高峰如何扛住?韵达快递选择 TDengine

TDengine

tdengine 时序数据库 韵达

AI工程化与低代码:加速人工智能应用开发的新趋势

EquatorCoco

人工智能 AI 低代码 人工智能技术

微服务设计介绍_SOA_Jan Stenberg_InfoQ精选文章