SOA设计原则
一 PA阶段(pre-Architecture)
1 需求矩阵
软件需求=功能需求+质量属性+约束
按层次分为:业务级别,用户级别,开发级别
|
功能
|
质量
|
约束
|
业务级别需求
|
xxx
|
可扩展
|
业务环境约束
|
用户级别需求
|
xxxx
|
安全,高可用
|
使用环境约束
|
开发级别需求
|
xxxx
|
可定制,可重用
|
开发环境约束
|
二 CA阶段(Conceptual Architecture)
物理层架构设计:
定义就是,对高层组件的职责进行笼统定义,并给出高层组件之间的关系。并不设计到接口的细节
主要也是为三个阶段
a 基于关键的功能进行初步设计
b 综合初步设计,确认高层分割
c 考虑非功能需求做出相应决策
总结: 关键功能 + 关键质量 + 业务需求与约束
此步可以通过鲁棒图进行分析得出高层组件之间的关系
得出概念分层结构图为理想化架构
根据概念架构继续细化分析
目标
|
场景
|
决策
|
集成性
|
如何将大量的异构系统进行集成
|
指定系统集成标准。。。
|
高可用
|
考虑到磁盘,中间件,网络等等各个环节一旦发生故障,如何避免单点故障
|
磁盘阵列,故障转移集群,双链路网络
|
安全性
|
数据不丢失,个人隐私保护等等
|
数据备份,灾备方案,加密,存储,访问授权等等
|
三 RA 阶段
物理层架构设计:
数据库的架构设计:
难点是分布式方案设计,主要应该从三个方面考虑:垂直切分,水平切分,构建OLAP 和 离线数据处理
1) 垂直切分 就是按照系统功能进行数据切分,从系统,子系统,模块逐步深入进行切分,目的是实现数据存储级的功能解耦。由于数据存储层分开不能直接夸库访问,只允许通过程序级别的接口机型访问,可以是API,也可以是SOA架构中的服务。由于本身从代码上来讲,这些代码是相互独立的,所以数据如何存储影响不大,可以完全实现解耦设计。
2)水平切分 对相同的功能采用相同的数据结构定义,但会在数据级进行区分,如按照时间,按照不同的客户群,按照业务数据的某个属性,都是可以的。水平切分是实现SaaS系统Multi-Tenant`
3)构建OLAP 数据处理大致分为俩类:OLTP (联机事务处理)OLAP(联机分析处理)
相关推荐
YOLOv3-Cloud 教程在云端启动并运行 YOLOv3 所需的一切。免费学习如何在云端训练自定义 YOLOv3 对象检测器!您可以在此处观看代码的分步演示视频https://www.youtube.com/watch? v=10joRJt39NsGoogle Colab 笔记本...
首先,从标题和描述中我们可以看出,这段文字是一种文学创作的产物,即“坐在云端(组诗)”。这涉及到艺术创作方面的内容,包括诗歌创作的技巧与表达。在IT行业中,程序猿和工程师们有时也需要进行技术文档的编写,...
VIPKID在云端的成长历程 从 VIPKID 在云端的成长历程中,我们可以总结出以下知识点: 一、架构发展的过程 架构发展的过程是指 VIPKID 从初始阶段到现在的架构演进过程。从 2014 年到 2018 年,VIPKID 的架构发展...
【Azure可信在云端】 在数字化转型的浪潮中,越来越多的企业选择将业务迁移至云端,以享受云计算带来的种种优势。Azure作为Microsoft提供的云服务平台,已成为众多企业的首选。公有云服务的市场规模持续扩大,预计...
Python中的credstash是一个轻量级的工具,专为在云端管理加密的秘密和证书而设计。这个工具基于Python,使得开发者可以方便地存储和检索敏感数据,如API密钥、数据库密码或其他任何需要保密的信息。credstash的核心...
《网络安全的未来在云端》这篇文档探讨了网络安全领域的一个重要趋势——安全访问服务边缘(SASE),这是一种由云交付的新型网络安全模型,旨在应对数字化业务转型带来的挑战。随着越来越多的企业将其工作负载迁移到...
《大数据导论》一文详细探讨了这一现象,并揭示了大数据在云端如何成为链接开放数据、促进政府透明度和激发创新的平台。 文章首先提到了"WWW之父"蒂姆·伯纳斯-李爵士,他不仅发明了万维网,更倡导开放数据的理念。...
总的来说,FreeRTOS通过其灵活的架构、强大的功能集和与AWS IoT服务的紧密集成,为物联网设备在云端的部署提供了强大的解决方案。开发者可以利用FreeRTOS快速开发安全、可靠的IoT应用程序,从而推动技术创新,改变...
《在云端》是一部深入探讨现代工作模式和人际关系的电影,尤其与软件开发行业有关联,因为它揭示了技术如何改变传统的工作方式。电影中的主角瑞恩·宾厄姆,由乔治·克鲁尼饰演,是一位专业处理公司裁员问题的顾问,...
综上所述,VIPKID在云端的成长历程体现了IT技术在现代在线教育中的核心作用,展示了技术如何驱动一个教育企业快速发展并保持竞争力。这份文档很可能会深入探讨这些技术的应用细节和面临的挑战,对于理解在线教育行业...
总结来说,DaaS作为大数据在云端的一个重要发展方向,已经在数据的应用、清理和保护等方面展现出其独特的价值和潜力。随着技术的进一步成熟和应用的不断深化,DaaS将在大数据时代扮演着越来越重要的角色,为社会的...
《数字治理解决方案:在云端发展教育事业》 随着信息技术的发展,教育领域正逐渐迈向数字化转型。数字治理解决方案在这一过程中扮演着至关重要的角色,它旨在优化教育数据的管理,提高数据的价值,为云端教育事业的...
双因素认证是在密码验证基础上增加的另一层安全措施,通常需要用户提供一个额外的验证信息,比如通过短信、电话或专用设备收到的一次性代码。这样的认证方式能够为账户提供更强的安全保护,即便密码被破解,攻击者也...
小米作为一家全球知名的科技公司,其数据存储服务在云端的实践是业界关注的焦点。本文件探讨了小米如何利用Amazon Web Services(AWS)提供的云存储解决方案来构建和优化其Mi Cloud服务,确保数据的安全性、可扩展性...
nodejs文件位于nodejs文件夹中,部署在云端;nodejsmysql文件是Android的部分源代码,apk可以安装在手机上。一个简单的应用程序,主要帮助了解如何使用云服务器以及如何连接到它们
云建站自动建站系统是一种基于云计算技术的网站构建平台,它允许用户无需具备专业的编程技能,通过预设的模版和便捷的操作界面,快速创建并管理自己的网站。这款在线建站系统通常包括一系列功能模块,如内容管理系统...
### 云存储与虚拟化分论坛-生活在云端 #### 关键知识点概述: 1. **信息技术发展的历史潮流**:从以主机为中心到以信息为中心的发展历程。 2. **信息技术的快速增长**:特别是在信息量上的指数级增长,以及由此...
"在云端使用软件,无需安装,一点,下载,直接使用" 这点强调了云服务的便捷性。用户不需要在自己的设备上下载整个软件包,然后经历安装步骤。而是通过浏览器或者其他客户端工具,直接调用远程服务器上的应用,减少了...