《面向模式的软件架构,卷3》试读:1.2 资源管理的范畴

几乎在任何领域,资源管理都是一个重要方面,从嵌入式小型应用程序[NoWe00]到大型企业系统[Fowl02]甚至网格计算[BBL02],无不如此。任何系统都将受益于有效的资源管理,无论资源的类型和可用性如何。例如,小型嵌入式设备的应用程序通常资源有限,用于这种设备的应用程序必须妥善地管理资源,这显而易见。主要的制约因素包括CPU性能、可用内存量以及网络和总线的带宽。典型的嵌入式应用程序包括用于手机和手持设备的软件。 同样,大型企业系统运行电信交换软件和电子商务应用程序。在这样的系统中,应用程序的运行通常依赖于框架和服务器端组件系统。要确保可扩展性,离不开有效的资源管理,因为必须避免新增额外的硬件,以节省成本。 在开发生命周期的晚期(即系统集成和测试阶段)进行系统分析和性能分析时,经常发现需要进行有效的资源管理。然而,此时修改系统设计很难且代价高昂,因此应在软件系统生命周期的早期解决资源管理方面的挑战,这至关重要。 资源是从某种资源提供方处获取的,例如,内存是从操作系统那里获取的。鉴于获取资源的开销通常不菲,因此获取资源后,必须妥善地控制其生命周期,最大限度地减少额外开销。鉴于未用的资源也是一种开销,因此确保资源及时得到释放至关重要。 解决软件系统中影响资源获取、访问和释放的主要作用力很重要,找到简单的解决方案同样重要。开销超过收益的解决方案毫无用处,因此在实现有效资源管理的同时,应确保编程模型简单,以方便应用程序开发人员。例如,通过在资源管理的方式上引入某种程度的透明性,有助于简化开发人员的工作。 大多数较新的应用程序都采用分层架构[POSA1]。在这种架构中,最下面通常是操作系统抽象层,然后依次是中间件层[POSA2][VKZ04]和组件层或基本服务层[VSW02],最后是实际的应用程序逻辑层。 资源管理并非仅限于某一层,而是适用于各个抽象层。例如,操作系统抽象层需要小心处理文件句柄和内存等操作系统资源,而中间件层必须管理各种资源,如连接和线程。 资源管理不仅对本地系统来说很重要,对分布式系统来说亦如此。分布式系统管理起来更复杂,因为远程通信不可靠,因此对跨越多个进程的资源进行管理更加困难。

>面向模式的软件架构,卷3

面向模式的软件架构,卷3
作者: [德] Michael Kircher [印]Prashant Jain
副标题: 资源管理模式
原作名: Pattern-Oriented Software Architecture Volume 3: Patterns for Resource Management
isbn: 7115313431
书名: 面向模式的软件架构,卷3
页数: 180
译者: 袁国忠
定价: 49.00元
出版社: 人民邮电出版社
装帧: 平装
出版年: 2013-6