高级模型驱动技术在性能工程中的应用
1. 引言
在软件开发中,性能工程至关重要。在设计阶段,软件性能工程能助力软件架构师识别潜在的性能问题,如瓶颈。不过,在软件生命周期的早期,关于系统实现和执行环境的信息非常有限,而这些细节对准确的性能预测至关重要。
传统上,软件架构师使用抽象设计模型来预测和评估目标系统的响应时间、吞吐量和资源利用率。通过模型驱动的软件性能工程,架构师以系统的架构模型为基础进行分析,将其转换为基于模拟或分析的预测模型,如排队网络、随机Petri网或随机过程代数。但要实现准确预测,性能模型需要包含大量低级别细节。
例如,消息中间件的配置(如事务大小)会影响消息的传递时间,如图1所示。然而,软件架构师很难将这些细节融入架构模型,因为中间件的复杂性和实现所需的特定知识会极大增加建模工作量。
| 消息类型 | 消息大小对传递时间的影响 |
|---|---|
| 非持久消息 | 传递时间随消息大小变化的趋势 |
| 持久消息 | 传递时间随消息大小变化的趋势 |
| 本地消息 | 传递时间随消息大小变化的趋势 |
| 远程消息 | 传递时间随消息大小变化的趋势 |
尽管一些架构模型能准确反映系统性
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



