开发者社区> 不变的狗子> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

为什么需要这本指南

简介: 这本手册叫做应用架构设计指南,刚刚我们讨论了什么是好的应用程序。那么,什么是架构设计?架构的核心就是以抽象的方式考虑所有重要的点(也就是上面列出的点)。
+关注继续查看

什么是好的应用?

根据ISO/IEC 25010的定义,好的应用应该具有以下属性。
image.png
● 满足功能需求:功能的完整度、正确性和恰当性。功能属性(或者叫功能需求)永远是架构设计中最基础的一点,其他所有的属性都可以划为非功能属性(非功能需求),又称质量属性。事实上,大部分的功能都可以用多种架构来实现,真正决定我们的架构选择的因素往往是非功能需求,也就是下面这些需求。
● 性能效率:时间表现(例如响应时间、延迟)、资源利用率和系统容量(例如IO吞吐量,可伸缩性也可以认为是容量的一种表现。
● 可靠性:可用性、容错性、可恢复性。
● 易用性:可学习性、可访问性(例如W3C的可访问性标准)、UI交互体验等,本文暂不对易用性讨论。
● 兼容性:共存能力(例如向上或向下兼容)、互操作性(例如不同的系统之间互相下达指令)、协同性,我们把系统的功能上的可扩展性也归入兼容性中。
● 可移植性:可适配性、可安装性、可替代性。
● 可维护性:可管理性、可监控性、可分析性和可测试性,模块化程度(高内聚低耦合)通常也算可维护性的一部分。
● 安全性:机密性、完整性、不可伪造性、可审计性等,本指南中,安全性将不单独作为一个章节,而是在各模块设计过程中讲解。您也可以参见阿里云安全白皮书了解更多。
在衡量上述属性时,您可以使用SMART(Specific、Measurable、Attainable、Relevant、Time-bound)原则:如果不满足这些原则,可以不计入考虑范围。实际上,还有一项DevOps也是我们在设计时必须考虑的非功能需求项,在后续部分章节中会体现。

什么是好的架构设计?

这本手册叫做应用架构设计指南,刚刚我们讨论了什么是好的应用程序。那么,什么是架构设计?架构的核心就是以抽象的方式考虑所有重要的点(也就是上面列出的点)。什么是设计?设计的核心就是解决系统的一个或多个问题。所以架构设计,核心目的就是解决系统内重要的问题,在现有条件下,做出的恰当决策,尽可能满足刚才提到的好的应用的几个特点。应用架构设计仅着眼于组件级别及更大的粒度,不会过多关注组件内部的实现,重点在于组件功能、组件结构以及组件之间的依赖。

什么是云上应用架构设计的特点?

进行云上的应用架构或网站设计时,我们需要考虑到云的特点:本地部署的应用通常是一个较大的整体,而云上应用会被拆散成若干个小的服务或组件,通过API或其他协议通信。云上的各类资源也是分散的,随时可以新增实例进行水平扩展。我们可以总结云上和本地应用架构部分不同点如下。
image.png

为什么需要云上应用架构设计指南?

云上应用架构设计指南用于帮助您在阿里云上,设计出好的应用程序,包括但不限于具备可伸缩性、可靠性、可管理性等上述提到的特性。想要在一本指南中涵盖所有应用设计细节,是不太可能的,因此我们内容呈现会遵循“刚好够用”的原则。
这本指南写作的时候,也参考了很多行业先进经验,在此对过往致力于云上应用设计的前辈们表示感谢!

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
用户指南—如何查看和升级实例版本
本文介绍PolarDB-X 2.0实例版本的相关信息。
13 0
用户指南—如何查看和升级实例版本
本文介绍PolarDB-X 2.0实例版本的相关信息。
20 0
PCA综合指南
PCA综合指南
34 0
用户指南—如何查看和升级实例版本
本文介绍PolarDB-X 2.0实例版本的相关信息。
44 0
线程和进程到底是什么?大概就是下面这些了额
线程和进程的优缺点: 首先,要实现多任务,通常我们会设计Master-Worker模式,Master负责分配任务,Worker负责执行任务,因此,多任务环境下,通常是一个Master,多个Worker。
1291 0
深度学习综述
本文是《Nature》杂志为纪念人工智能60周年而专门推出的深度学习综述,也是Hinton、LeCun和Bengio三位大神首次合写同一篇文章。该综述在深度学习领域的重要性不言而喻,可以说是所有人入门深度学习的必读作品。
4083 0
软件开发指南
版权声明:欢迎转载,请注明沉默王二原创。 https://blog.csdn.net/qing_gee/article/details/42290281 1.很多时候,产品开发出来的效果和刚开始的设计以及客户的需求是不一致的,但是最后的结果是大家都接受的样子,虽然产物扭曲了,但是得到了大家的喜欢,所以很多时候我们需要顺其自然,不要因为不是自己的心意而去抱怨,也不要因为客户的刻意需求去抗拒。
813 0
1
文章
246
问答
来源圈子
更多
开发者免费资源中心,技术电子书、会议PPT、论文资料持续供应中
+ 订阅
文章排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载