技术架构:将能力沉淀为平台(技术能力模型)
ccwgpt 2024-09-21 13:33 31 浏览 0 评论
数据架构和应用架构等设计工作完成以后,需要识别其中的技术需求,以技术架构规划设计的形式,将应用/数据架构所定义的技术需求映射或转换成相应的技术能力,技术组件封装技术能力,以技术服务封装技术组件,最好是将技术能力沉淀为技术平台,以指导和规范IT产品或平台在规划、设计、实施、运维等场景下的技术工作。
一、技术架构规划设计的主要内容
技术架构的规划设计,主要内容包括三个层面:战略层、战术层和项目层,其中,战略层工作指引战术层工作,战术层工作需要项目层工作来落地。技术架构规划设计的工作内容,具体可参见下图1:
如图1所示,技术架构战略层的工作内容包括:技术策略、技术架构、技术架构蓝图书的编制和设计。
技术策略明确了技术架构需要遵循的基本原则或策略。举例来说,根据业界最佳实践,一般有以下技术架构原则:
1)面向应用,注重体系。技术架构的规划设计应围绕软件应用和数据应用来进行,强调通过体系化建设来确保其一致性和稳定性。比如,在资源池基础上构建统一的技术规范,落实业务应用的标准化、规范化,包括采用统一的基础设施,采用统一的应用环境,采用统一的数据平台,采用统一的部署规范,等等。
2)适度超前。技术架构规划设计时,需要考虑企业未来3~5年的数字化建设需求,需要考虑前瞻性、创新性技术的应用,充分利用创新性技术消除基础设施的复杂性,考虑应用、数据的分级资源管理模式,要求具备良好的可扩展性和可管理性,等等。
3)高可用性。技术架构要确保高可用,应用的任意服务实例失效,要能够快速发现、隔离并自动地从故障中恢复,不影响应用整体的可用性。需要确保应用和数据的完整性和高可用性。需要针对不同的应用,制定不同的可用性等级,优先保障核心应用的高可用,尽可能减少因应用不可用所带来的业务中断。
4)按需供应。技术架构要能够弹性伸缩,可基于既定规则和容量按需伸缩。网络、计算、存储等基础设施资源应尽可能实现虚拟化、云化、服务化,确保按需供应,既不短缺,也不冗余。
5)资源共享。技术平台要支持多租户,支持多租户隔离,每个租户只能访问、操作与自己相关的资源,不能访问、操作其他租户的任何资源。
6)安全合规。技术架构规划设计时,需保证涉密业务及数据的高度安全,需满足相关法律法规、信息安全和合规要求。
7)自动管控。构建自动化运维管理能力,支持技术资源的自动化交付,自动化部署、升级、扩容或缩容,以快速响应不同业务的资源和服务需求,确保技术架构和标准规范的强制落地,并能实现自动化监控、告警、故障定位和故障自愈。对于不能完全自动化的,应以智能化的方式,提供端到端的业务监控、预警预测和管理能力,支持快速地故障响应和问题诊断。
技术架构指的是支撑业务应用和数据应用的所有技术组件、技术服务或技术平台,是技术架构规划设计的关键内容。技术架构设计的基本思想是技术能力组件化,技术组件服务化,技术服务平台化。
对于IT环境比较复杂,有能力有资源,或是架构实践经验比较丰富的企业,还应制定技术架构蓝皮书,用于明确技术架构的指导思想、演进路线、技术路标,等等。
技术架构战术层面的工作内容包括:技术标准、技术规范和技术服务目录的编制。技术标准指的是针对数字化项目中可能重复使用的IT技术和软硬件资源,制定相应的选择规则或技术决策;比如,操作系统、数据库、中间件的选择,软件编程语言的统一,等等。技术规范用于规范和指导应用建设的技术运用,比如软件编码规范、系统接口规范、安全测试规范,等等。技术服务目录则是对技术服务进行罗列和描述,用于指导技术服务的选择。
技术架构规划设计落地层面的工作内容主要是技术设计,指的是支撑业务应用和数据应用的所有技术组件、技术服务或技术平台的概要设计,以及应用模块使用基础设施层或技术平台层等相关技术服务时详细要求的制定,比如,解决方案架构设计模板,等等。
二、技术架构规划设计的工作步骤
为了完成前文所述的设计内容,以得到相应的工作成果,技术架构的规划设计工作,需要按一定的程序和步骤,有序地推进。技术架构规划设计的工作步骤,可概括为6个步骤、18个子步骤,具体可参见下表1:
表1:技术架构规划设计的工作步骤
如表1所示,技术架构的规划设计,分为设计技术框架、设计技术组件、设计技术服务、设计技术平台、设计部署架构、设计整体蓝图等6个工作步骤,每个工作步骤各有3个子步骤,合计18个子步骤。
技术架构规划设计的输入有企业数字化战略、应用/数据架构原则与设计、业务最佳实践、现状调研成果、相关法律法规要求,等等;得到的输出成果包括技术架构原则、技术架构框架、技术组件清单、技术服务目录、技术平台设计要求、部署架构、技术架构蓝图、技术蓝图书、技术标准与规范,等等。
技术架构规划设计的总体工作思路,首先要识别出应用架构和数据架构中的功能性、非功能性技术需求,再结合业界相关法律法规要求、最佳实践与对标分析、现状调研与差距分析,明确技术架构改进方向,将技术需求转换为组件化的技术能力,将技术组件转化为技术服务,将技术服务沉淀到技术平台,再将技术组件、技术服务和技术平台的部署需求落实到部署架构设计中,最终形成技术架构设计蓝图、技术架构蓝皮书和技术架构标准规范。
以部署架构设计为例,包括部署策略的明确、部署节点分布设计(数据中心容灾、云边端架构等)、数据中心组网设计(网络域划分、数据中心网络拓扑)、资源池设计(计算资源池、存储资源池、大数据资源池、容器资源池),等等。
三、技术架构规划设计的蓝图成果
技术架构规划设计的交付成果中,除了架构的策略、原则、标准、规范、蓝皮书等内容以文档的形式来展示,其他成果要根据领域的划分,以技术组件、技术服务或技术平台等形式来表示,并要考虑开发环境、测试环境、生产环境等不同使用环境的需要。技术架构规划设计蓝图的主要成果,可参见下图2:
如图2所示,技术架构规划设计蓝图中,所需的技术能力可概括为5大领域、3类能力和3个环境。
1)所谓5大领域,指的是应用或数据所需的技术能力,大体可划分为数字应用、技术平台、基础设施、运维运营、安全保障等5个领域,也可概括为技术能力的“三横两纵”。
2)所谓3类能力,指的是这些技术能力,有的以技术组件的形式来体现,有的以技术服务的形式来体现,有的以技术平台的形式来体现。总体上,能服务化的技术组件要尽量服务化,能平台化的技术服务要尽量平台化。举例来说,如果安全技术能力可以平台化,那就规划设计一个安全技术平台,具体包括安全管理中心、环境安全、边界安全、网络安全、个人隐私保护等功能模块、技术服务或技术组件。
3)所谓3个环境,指的是针对开发环境、测试环境、生产环境等不同用途的应用环境,技术架构规划设计时,需要根据环境的不同,在数字应用、技术平台、基础设施、运维运营、安全保障等领域做必要的适配,以兼顾可靠、安全、经济等目的。比如,开发环境侧重于经济,生产环境更强调可靠和安全。
相关推荐
- NET版本众多,傻傻分不清楚
-
面对.NET众多的版本,尤其还有几个名称的情况下,相信很多初学C#的开发人员都很困惑,搞不清究竟该怎么选择。下面就列举一下.NET的主要版本及其区别:.NETFramework(传统版本,仅适用于W...
- .NET Framework 和 .NET Core 有啥区别?如何选择?
-
.NETFramework和.NETCore都是由Microsoft开发的软件框架,用于创建Windows应用程序和Web应用程序。它们的主要区别在于:支持的操作系统:.NET...
- 「分享」介绍一款倍受欢迎的.NET 开源UI库
-
概述今天要带大家了解的是一款WPF的开源控件库MahApps.Metro。MahApps.Metro是用于创建现代WPF应用程序的工具包,它许多开箱即用的好东西。目前支持的NETFramework...
- .NET 5.0正式版发布:应用可在ARM64上原生运行
-
更多:o梵蒂冈图书馆频繁遭黑客攻击oNPM包被发现窃取敏感的Discord和浏览器文件o作者:硬核老王o(本文字数:712,阅读时长大约:1分钟).NET5.0正式版发布:应用可...
- 盘点8个热门.Net开源项目
-
一、SmartFormat:轻量级文本模板库,轻松替代string.Format项目地址:https://github.com/axuno/SmartFormatSmartFormat不仅继承了s...
- .NET与Java开发:一场从框架到应用实例的深度对决
-
在软件开发这片广袤的战场上,.NET与Java两大开发平台如同两位身经百战的将军,各自率领着庞大的开发者队伍,在不同的应用场景中大放异彩。今天,我们就来一场从框架到应用实例的深度对决,看看这两大平台究...
- TouchSocket:一个功能强大且易于使用的 .NET 网络通信框架
-
项目介绍TouchSocket是一个功能强大且易于使用的.NET网络通信框架,适用于C#、VB.Net和F#等语言。它提供了多种通信模块,包括TCP、UDP、SSL、WebSocket、Mo...
- 远离报错烦恼!深入全面掌握.NET Framework
-
由于Windows系统对.NETFramework这一系统组件有着极为特殊的要求,而部分应用软件及游戏对其的依赖性也近乎达到了驱动级的水准,使用或安装不当会遭遇许多“未知”的问题,因此如何掌握.NE...
- 想自己搭建.Net Web框架,开源项目太庞大看不懂,可以看这个教程
-
大家好,我是编程乐趣。一直以来,我都在运营知识星球,这个月也开始全职专心编写教程了。当时编写教程,就是发现很多程序员工作多年了,都没自己搭建过框架,也没接触过公司的框架底层代码。这就导致一些问题,无法...
- .NET 8 + React 18 一体化开发框架!苏州码农十年匠心打磨
-
开篇前言从2014年入行至今,从WebForms到MVC,从JavaScript到React/Vue,从.NETFramework到.NETCore/8,技术栈的变迁伴随了我整个职业生涯。去年,我...
- .Net Framework详解
-
相信有不少小伙伴遇到过这种情况:安装软件时提示.NetFramework未安装导致软件无法打开,或者需要安装.NetFramework4.0以上的组件。那.NetFramework是什么呢?....
- 系统小技巧:深入全面掌握.NET Framework
-
由于Windows系统对.NETFramework这一系统组件有着极为特殊的要求,而部分应用软件及游戏对其的依赖性也近乎达到了驱动级的水准,使用或安装不当会遭遇许多“未知”的问题,因此如何掌握.NE...
- 前端架构师成长之路:如何在 Vue 的计算属性中传递参数
-
在Vue中,计算属性(computed)是从其他响应式属性派生的属性,是用于自动监听响应式属性的变化,从而动态计算返回值。计算属性(computed)通常是一个没有参数的函数。当然如果需要像调...
- Vue2 vs Vue3:核心差异与升级指南
-
Vue3自2020年发布以来,凭借其革命性的改进迅速成为开发者关注的焦点。本文将从架构设计、API模式、性能优化等多个维度深入对比Vue2和Vue3的核心差异,并提供代码示例帮助开发者...
- 突发!Vue3 投屏神器引爆程序员朋友圈
-
【AlarmLevel】重要【AlarmTitle】突发!Vue3投屏神器引爆程序员朋友圈【AlarmOverview】最近GitHub上名为vue-screen-share的仓库突...
你 发表评论:
欢迎- 一周热门
- 最近发表
- 标签列表
-
- 若依框架 (41)
- MVC框架 (46)
- spring框架 (46)
- 框架图 (58)
- bootstrap框架 (43)
- flask框架 (53)
- quartz框架 (51)
- abp框架 (47)
- jpa框架 (47)
- scrapy框架 (52)
- beego框架 (42)
- java框架spring (43)
- grpc框架 (55)
- 前端框架bootstrap (42)
- orm框架有哪些 (43)
- ppt框架 (48)
- 内联框架 (52)
- winform框架 (46)
- gui框架 (44)
- cad怎么画框架 (58)
- ps怎么画框架 (47)
- ssm框架实现登录注册 (49)
- oracle v (42)
- oracle字符串长度 (48)
- oracle提交事务 (47)