工程架构演化总结
·
最开始,我们认识架构都是指用了C/S架构,还是B/S架构。现在区分没有那么明确了,很多APP严格说应该是C/S架构,但后端服务又明显是B/S架构。
抛开这个概念后,我们把前后端一并部署的服务,称为单体架构。后来因为单体架构下,对后端进行扩展部署不便,又进行前后端分离。分离之后,不太占用资源的前端,只需要冗余2个,便可以稳定运行,不需要为它扩展太多资源。延续为后端扩展,从开始的前后端访问,用ng反向代理;后端与后端的访问,引入dubbo;到云原生后,把这个情况进行了简化,只需要service 到pod的网络。
在这个过程中,引入了很多概念,如分布式架构、微服务架构、云原生架构。
分布式架构,按我的经验,它主要解决的是可靠性问题,通过冗余部署,来提升系统的可靠性。
微服务架构,是为了节省资源,把资源更多用在瓶颈服务上,因此把服务拆得更细,这其中拆服务也是借鉴了领域驱动开发的思想。
云原生架构,并没有颠覆前两种架构,它是部署架构的升级,通过云原生,它的目标是对资源进行弹性管理。
现在AI开始流行,引入了AI智能体,AI智能体是一种AI工程的架构,它包括四个部分,分别为工具、记忆、规划、执行。这看起来不算与前面的架构同级,更多更偏业务,它不是为了解决可靠、资源、弹性管理,而是为了提升AI的智能。
除了考虑可靠性、资源、AI智能,还有耦合性。为解决应用之间的耦合,各应用之间搭建了一个业务网关,通过网关解耦,它可以让微服务之间错综复杂的调用变得清晰,方便管理。
更多推荐

所有评论(0)