什么是架构?网络架构中都有什么?终于有人讲明白了.docxVIP

什么是架构?网络架构中都有什么?终于有人讲明白了.docx

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

理解架构这个词的意思是十分重要的。它可能被过度使用,并且使用在各种环境中。如果缺少一致的理解,将会有交流失败的风险。那么架构这个词到底是什么意思呢?

01什么是架构?

架构是一个过程、一个结果和一门学科。

作为一个过程,它涉及将组件与设计元素结合,以此来形成一个有目的的实体。

作为一个结果,它描述了由其形式所定义的一系列实体。对于我们熟知的“哥特式大教堂”这种架构形式,它的特点是一系列公认的设计元素与方法,目的可能是构建一个礼拜场所,但“哥特式大教堂”实际上意味着更多。

最后,作为一门学科,架构就是架构师接受训练要掌握的本领。计算机科学领域从设计物理实物的学科中借用了这个术语,例如建筑物和城市,其中包含广受认可的培训与认证过程。

架构的三个方面都适用于“真实的建筑”与计算机科学。

1.作为一个过程

我的定义有两个重要的方面:将组件整合在一起并应用于某个目的。

将组件整合在一起:这是计算机科学家在考虑模块、接口、依赖、分层、抽象以及组件复用等问题时所做的工作。这些都是设计模式,计算机科学家接受了相关的训练,在思量设计挑战时需要考虑这些设计模式。

应用于某个目的:设计过程必须按照工件的预期目的来塑造,例如,是一所医院而不是一座监狱,是一个低功率处理器而不是超级计算机,是汽车中将刹车踏板挂在刹车上的网络而不是因特网。作为架构的一部分,设计师必须解决系统不能做什么(或者做得很好)与将要做什么。在计算机科学中,系统设计存在着一种危险,这是众所周知的,它被称为第二系统综合征,即首先构建一个或许把一些事做得很好的系统,然后再提出一个试图把所有事情都做得很好的替代方案的趋势。

2.作为一个结果

在建筑设计实践中,设计通常会产生一份结果。也有一些例外,例如排房,其中一个设计会建造很多次,但大多数建筑物都只有一座。在描述结果时,架构这个术语通常意味着一类设计,以其最显著的特征为代表(例如飞拱)。这个术语适用于这个抽象类,尽管架构师必须在建筑团队接管之前将建筑描述到非常精细的程度。

当计算机科学家重新使用架构这个术语时,他们稍微重新定义了一下。关于因特网,有很多不同的网络都是基于同样的设计:我们称之为“因特网”的公共全球网络,属于企业、军队等的私有网络,以及金融网络等特殊用途的网络。

在这种环境下,架构一词仅描述所构建的部分内容,给定示例的大部分设计过程都发生在之后的环节中,可能由不同的组来描述。

3.作为一门学科

“真正的”建筑师——那些设计楼房的人——去学校里学习这一行业。作为外行,了解他们的培养方式对于我们也是有教育意义的。架构(相对于结构工程)不是建立在基础科学与工程原理之上的设计学科。建筑师通常不关心结构工程等问题,并将这些留给别人。

当然,技术考虑可能需要尽早进入设计过程,因为建筑师要处理诸如能源效率或抗震等问题,但是建筑师主要是在设计过程中训练出来的。他们学的不是工程而是建筑。他们通过案例研究来学习,需要观察大量的建筑物,看它们有多适合(或不适合),看它们是否满足用户的需求,在视觉上是否有吸引力,如何处理设计权衡,等等。

在计算机科学中,我们往往希望设计能基于强大的工程基础、具有限制性的理论以及优先的设计选项等,但(至少在过去)系统架构的大部分业务都更类似于建筑师的业务(例如,从以前的设计中学习,问问什么运转良好、什么效果不佳,问问这个设计是否与目标相符合)。

我们在理论和实践方面对计算机科学家进行训练,但往往不赞成研究以前的设计,我们认为它们“不科学”或“未基于基本原理”。

我个人对试图使架构更加严谨而感到兴奋,但是不应该用“凭直觉”设计这样的短语来反对我们今天所做的事情。我们的学科是一门设计学科,就像建筑架构一样,我们应该努力超越它,而不是摒弃它。

因此,如果因特网的架构不是完整的规范,而只是该规范的一部分,那么架构中包含哪些内容呢?我们可以说说不包括什么。看看基于因特网技术的所有不同网络的例子,或者全球因特网的不同区域,试着发现它们的不同之处。我们看到它们在性能、弹性、对移动性的容忍、对安全性的关注等方面存在差异。

这个级别的设计决策构建在核心架构之上,但是没有被核心架构指定。那么,我们应该在这个核心架构中看到什么呢?

02网络架构的要素

我确定了可以决定某个特定问题是否上升到架构级别的几个标准:对于系统的正常工作,是否需要就该问题达成一致;就该问题达成一致是否方便;该问题是否定义了系统的基本模块性或功能依赖;或者该问题随着时间的推移是稳定的这一点是否重要。

1.对于系统的正常工作,我们必须一致同意的问题

例如,因特网架构是基于包的使用,以及假设包头总是具有相同的格式(不同的设计可能允许在不同的区域使用不同的格式,在这种情况下,架构可能会选择描述为所需的转换提供什么样的架构支持)。

另一个例子是,当我们第一

文档评论(0)

外卖人-小何 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档