返回介绍

18.4 聚焦领域之于系统的主要需求:维护状态或接受消息

发布于 2024-12-15 23:01:52 字数 1317 浏览 0 评论 0 收藏 0

答案是:忽略。

忽略掉一部分问题,是我们在系统实施中所必需的策略 2 。除了能降低当前系统与外部系统的耦合关系、减少系统处理异常情况时的成本之外,更重要的一点是,这样的策略有助于我们快速地将问题聚焦到该系统的核心领域。

除开计算机的两个关键问题——计算总量与数据总量之外,我们将领域之于系统的主要需求变成一个简单的定义:计算系统如何应对外部系统的 需要 。而进一步地考察这一需要,就可以发现:在“可计算”方面,任意领域的系统对“当前系统”的需要只有两个,即寻求计算资源,或寻求数据资源。

换言之,任何一个子系统——作为一个更大系统的组成部件——对外部系统只需要承担这样两种责任 3

  • 维护可对外公示的状态,使得外部系统可以将明确的行为(逻辑)施于自身;
  • 接受外部的消息,使得外部可以通过传递数据来影响自身。

对于接下来要讨论的问题来说,“系统由子系统构成”是一个基本设定。更具体地说系统包括 子系统通信验证 三个基础部件 4 ,而本书的下一章将基于这些部件,来讨论与架构实施相关的技术方法,以及通讯与验证相关的问题。

  1. 其一,看过前言的人应该知道 Joy 是谁;其二,Joy 总是把鸡蛋煮得很熟,这是一种过度的安全措施。
  2. 对于灾害,一个简单而实用的策略是:备灾甚于防灾。例如考虑到海底光缆断裂,那么就让 30%的数据通过陆路光缆;考虑到地震频发,那么就将应用分布到不同地区的机房,并在各机房做全镜像数据。这样的措施也被扩展到类似的系统问题上,例如考虑到战争,就将重要的计算资源部署在中立国;考虑到断电,就要增加备用电源,以及设计机械解决方案。但总的来看,这一类措施都是“忽略问题本身”的。
  3. 或之一,或全部,取决于系统设计的具体策略。
  4. 子系统通信验证 作为系统的三个基础部件,是在《我的架构思想:基本模型、理论与原则》一书中讨论架构组成论的一个基础。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文