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(联机分析处理)
相关推荐
首先,从标题和描述中我们可以看出,这段文字是一种文学创作的产物,即“坐在云端(组诗)”。这涉及到艺术创作方面的内容,包括诗歌创作的技巧与表达。在IT行业中,程序猿和工程师们有时也需要进行技术文档的编写,...
VIPKID在云端的成长历程 从 VIPKID 在云端的成长历程中,我们可以总结出以下知识点: 一、架构发展的过程 架构发展的过程是指 VIPKID 从初始阶段到现在的架构演进过程。从 2014 年到 2018 年,VIPKID 的架构发展...
【Azure可信在云端】 在数字化转型的浪潮中,越来越多的企业选择将业务迁移至云端,以享受云计算带来的种种优势。Azure作为Microsoft提供的云服务平台,已成为众多企业的首选。公有云服务的市场规模持续扩大,预计...
Python中的credstash是一个轻量级的工具,专为在云端管理加密的秘密和证书而设计。这个工具基于Python,使得开发者可以方便地存储和检索敏感数据,如API密钥、数据库密码或其他任何需要保密的信息。credstash的核心...
《网络安全的未来在云端》这篇文档探讨了网络安全领域的一个重要趋势——安全访问服务边缘(SASE),这是一种由云交付的新型网络安全模型,旨在应对数字化业务转型带来的挑战。随着越来越多的企业将其工作负载迁移到...
大数据在云端的发展催生了数据即服务(Data as a Service,DaaS)这一创新模式,它是一种将数据作为一种服务提供给用户的方式。DaaS涵盖了大数据基础设施和应用的各个方面,旨在为不同行业的用户提供便捷、灵活的...
总的来说,FreeRTOS通过其灵活的架构、强大的功能集和与AWS IoT服务的紧密集成,为物联网设备在云端的部署提供了强大的解决方案。开发者可以利用FreeRTOS快速开发安全、可靠的IoT应用程序,从而推动技术创新,改变...
《大数据导论》一文深入探讨了大数据在云端的应用,特别是在连接开放数据方面的重要性。大数据,作为信息时代的关键驱动力,已经逐步改变了我们处理和理解世界的方式。在云计算的环境中,大数据不仅提供了海量数据的...
《在云端》是一部深入探讨现代工作模式和人际关系的电影,尤其与软件开发行业有关联,因为它揭示了技术如何改变传统的工作方式。电影中的主角瑞恩·宾厄姆,由乔治·克鲁尼饰演,是一位专业处理公司裁员问题的顾问,...
综上所述,VIPKID在云端的成长历程体现了IT技术在现代在线教育中的核心作用,展示了技术如何驱动一个教育企业快速发展并保持竞争力。这份文档很可能会深入探讨这些技术的应用细节和面临的挑战,对于理解在线教育行业...
《数字治理解决方案:在云端发展教育事业》 随着信息技术的发展,教育领域正逐渐迈向数字化转型。数字治理解决方案在这一过程中扮演着至关重要的角色,它旨在优化教育数据的管理,提高数据的价值,为云端教育事业的...
确保数据中心在云端的安全是当前数字化时代的一个重要议题。随着云服务的广泛应用,我们的个人和企业信息面临着越来越多的网络安全威胁,包括身份盗窃和其他形式的网络犯罪。以下六种方法旨在提高云环境下的数据安全...
小米作为一家全球知名的科技公司,其数据存储服务在云端的实践是业界关注的焦点。本文件探讨了小米如何利用Amazon Web Services(AWS)提供的云存储解决方案来构建和优化其Mi Cloud服务,确保数据的安全性、可扩展性...
nodejs文件位于nodejs文件夹中,部署在云端;nodejsmysql文件是Android的部分源代码,apk可以安装在手机上。一个简单的应用程序,主要帮助了解如何使用云服务器以及如何连接到它们
云建站自动建站系统是一种基于云计算技术的网站构建平台,它允许用户无需具备专业的编程技能,通过预设的模版和便捷的操作界面,快速创建并管理自己的网站。这款在线建站系统通常包括一系列功能模块,如内容管理系统...
【Matlab源码】用于在云端运行EnergyPlus模拟的Matlab工具箱是一个高效且便捷的解决方案,它允许用户通过Matlab环境对建筑能源性能进行模拟分析,而无需在本地计算机上安装EnergyPlus软件。这个工具箱的核心优势在于...
### 云存储与虚拟化分论坛-生活在云端 #### 关键知识点概述: 1. **信息技术发展的历史潮流**:从以主机为中心到以信息为中心的发展历程。 2. **信息技术的快速增长**:特别是在信息量上的指数级增长,以及由此...
"在云端使用软件,无需安装,一点,下载,直接使用" 这点强调了云服务的便捷性。用户不需要在自己的设备上下载整个软件包,然后经历安装步骤。而是通过浏览器或者其他客户端工具,直接调用远程服务器上的应用,减少了...