6、软件架构需求解析与实践

软件架构需求解析与实践要点

软件架构需求解析与实践

1. 后端前端模式与模块架构

1.1 后端前端(BFF)模式

后端前端(BFF)模式存在代码重复的缺点,但只要能加速开发且长期来看不会成为负担,就是可行的。同时,应留意在下游服务中聚合重复逻辑的可能性,有时引入一个服务来聚合相似调用可以解决重复问题。例如,为 iOS 和 Android 创建移动应用时,可以考虑复用相同的后端,而为 Web 和/或桌面应用使用单独的后端。

1.2 基于模块的架构

这里的模块指的是可以在运行时加载和卸载的软件组件。Open Service Gateway Initiative(OSGi)模块最初为 Java 创建,后被移植到多个 C++ 框架中。使用模块的架构示例包括 Eclipse 等集成开发环境(IDE)、OpenDaylight 等软件定义网络(SDN)项目,以及 OpenHAB 等家庭自动化软件。

OSGi 允许模块之间进行自动依赖管理,控制其初始化、卸载和发现。由于它是面向服务的,可以将 OSGi 服务视为在一个“容器”中的微小(微?)服务,这也是 C++ 实现之一被命名为 C++ Micro Services 的原因。

C++ Micro Services 框架采用了一种处理单例的新方法。 GetInstance() 静态函数将从捆绑上下文中获取服务引用,而不是直接传递静态实例对象。这样,单例对象将被可配置的服务所取代,还能避免静态反初始化的问题,即多个相互依赖的单例需要按特定顺序卸载的情况。

1.3 架构总结

在架构设计中,涉及了多种架构风格,如单体架构、面向服务的架构、微服务架构等,并讨论了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值