第6章 双轮驱动的技术架构设计
6.1 什么是技术架构
技术架构描述:1)需要哪些技术服务;2)选择哪些技术组件来实现技术服务;3)技术服务及组件之间的交互关系。
技术架构意味着一份核准清单,强制规定了应该选择哪些厂商的哪些产品。
所谓的技术组件,可以是:
1.技术平台
2.技术框架
3.技术产品
所谓的技术服务:
1.硬件能力
2.网络能力
3.软件能力
6.2 生态变迁与技术浪潮
【生态】总述
【生态】从桌面软件,到分布式系统
【技术】小议库,框架,中间件技术的区别
什么叫Library(小议库)?
答,供开发时重用的软件单元。例如函数库,类库,控件库,标签库。
什么叫Framework(框架)?
答,供开发时重用的软件半成品。第一,它比Library粒度大,所以重用价值大。第二,相对而言,组成Libranry的这些类相对独立,而组成
Framework的这些类已经被Facade类,Manager类,Wrapper类管理起来,而且Framework提供hook函数,interface类提供扩展。
什么叫Middleware(中间件)?
答,Middleware是介于应用系统和软件系统之间的一类软件,为应用软件提供更为有用和高级的可重用服务。
答,Middleware = Server + API。中间件是完整的软件,经常以进程形式运行,应用系统通过进程间的通信或通信协议与中间件交互。另外,
中间件提供API,具体而言,低级的Library形式的API或高级的Framework形式API都可以。
总结,Middleware比Library和Framework整整高了一个等级,而且前者还包含后两者。
【生态】从分布式到云计算
业界生态能从分布式跃到云计算,有五个"离不开":
1.IaaS层面,离不开虚拟化技术的成熟
2.PaaS层面,离不开大量优秀的Middleware产品的成熟
3.接口技术上,离不开Web Service 等OpenAPI标准的成熟
4.数据交换格式上,离不开从XML的启蒙到json格式的大行其道
5.思想铺垫上,离不开大型产商此前对SOA和SaaS思想的大量宣传造势
【技术】小议Docker Container,K8s Pod 的底层Linux技术
docker Image : 发布格式标准
docker container : 容器是与系统其它部分隔离的进程,同时也是Image的运行实例
Kubernetes Pod : k8s 作为容器编排调度系统,把多个docker container 组织成一个集群,称为Pod,以此作为基本调度单元。Pod内的
多个docker Container 共享 Network和Volume资源。
从发布态来看,云原生应用是一组Image发布包。同时,Image是超越发布包概念的,因为它有大量的运行时配置和运行时设置支持的。用户可以用
USER,WORKDIR,ENV,EXPOSE,VOLUME 指令一同把"配置"发布出去,还可以用 ENTRYPOINT,CMD指定运行程序时所带的参数命令。
从运行态看,云原生应用是一组互相通信的容器。不同容器,可以运行不同Image发布包,也可以运行相同的Image发布包。
云原生应用具有水平伸缩的优点,可以借助k8s轻松实现水平自动伸缩。自动伸缩的本质就是资源管理自动化,docker费那么大劲隔离资源,k8s
费那么大劲搞Pod,Sandbox,Node,Cluster 等多级资源隔离层次,终极目标就是实现基于容器的,细粒度的,自动化的水平伸缩管理。
【生态】从云计算到云原生
传统云计算模式在开发和运维方面都远非最佳,导致业务上云很难,原因如下:
1) 云应用开发缺乏高效开发环境和开发模式
2) 部署还很费力,频繁发布还不可控,快速扩容/缩容还做不到
云原生技术的部分发展脉络:
1.发布包 --- 发布包技术历史悠久,Linux的APT包管理,插件技术,热补丁技术,都可归为此例。Image是云原生应用开发的输出之一,
也是云原生应用部署的输入之一。
2.伸缩调度 --- 云原生应用的运行态管理,是云原生技术的核心技术。仅从容器级扩容/缩容这一目标来看,云原生技术依赖的是以Linux
进程技术为核心的高级进程管理技术。
3.容器 --- 从技术上看,容器是进程的封装。从功能上看,容器管理Image的基本生命周期,即Image的创建,启动,关闭,重启和销毁。
从基础设施配套上看,容器管理引擎(docker等)和容
6.业务架构·应用架构·数据架构实战 --- 双轮驱动的技术架构设计
最新推荐文章于 2024-08-02 16:54:02 发布
本文深入探讨了业务架构、应用架构和数据架构在实际项目中的结合应用,强调了双轮驱动的技术架构设计理念,旨在帮助读者理解如何通过紧密配合业务需求与技术实现,构建高效稳定的企业信息系统。
摘要由CSDN通过智能技术生成