云架构(一)

以下的设计模式有利于在构建可靠,可扩展,安全的分布式应用。

        每种设计模式都描述了它要解决的问题、注意事项和在微软的例子。大部分设计模式包含了代码例子或者片段,用来展示在微软云上是如何实现的。但是这些设计模式对于其他分布式系统也是有意义的,无论他们是基于亚马逊或者其他云平台。

分布式开发的挑战

        1、数据管理

                数据管理是云应用的关键,它对于质量属性(非功能性需求:可靠性,安全要求,性能,灵活性,可维护性等等)有着重大的影响。数据一般存在于不同的位置,跨多个服务器,以提高性能、可伸缩性或可用性。这样会引起各种不同的问题。例如,数据的一致性必须得到保证,所以数据一般要跨不同的位置进行同步。

        2、设计和实现

                好的设计包含组件的设计和部署中的一致性和连贯性,确保方便管理和部署,并且允许组件和子系统能够在其他应用程序和场景中可复用。在设计和实现阶段的决策会对云上的应用程序和服务产生显著的影响质量和总体成本。

        3、消息机制

                分布式的云应用程序需要一个消息基础设施来连接组件和服务,理想情况下,松耦合性可实现最大可扩展性,异步消息的广泛运用提供了巨大便利的同时,也带来了很多挑战,比如消息排序,有害消息管理,幂等性等等。

你可能感兴趣的:(架构,架构)