Pattern-oriented Software Architecture: Patterns for resource management
Efficient management of resources is critical in the execution of any kind of software. From embedded software in a mobile device to software in a large enterprise server, it is important that resources, such as memory, threading, files, or network connections, are managed efficiently to allow the systems to function properly and effectively.
As the need for resource management is often discovered late in the software development lifecycle, and changing the system design at this late stage is difficult, it is important that such tasks are performed early in the lifecycle. Since systems belonging to different domains have different system constraints and requirements, a technique that works well in a particular system or configuration might not be so effective in another.
POSA 3 uses patterns to present techniques for implementing effective resource management in a system. The patterns are covered in detail, making use of several examples, and, as in previous POSA volumes, directions are given on how to implement the presented patterns. Additionally, the volume presents a thorough introduction into resource management, and two case studies where the patterns are applied to the domains of ad hoc networking and mobile radio networks. The patterns are grouped by different areas of resource management and hence address the complete lifecycle of resources: resource acquisition, coordination and release.
Results 1-3 of 22
If a resource that can be concurrently accessed by multiple users has
changeable state, then access to that resource needs to be synchronized. On the
other hand, if a resource that can be concurrently accessed by multiple users
does not ...
The memory pool can only become more predictable than the operating system if
it is able to avoid synchronization and management of variable-sized memory
allocations. To avoid synchronization overhead, memory pools need either to be
The pool does not synchronize access to the resources. Therefore if
synchronization is required, it must be provided by the resource user. There are
also some liabilities of using the Pooling pattern: • Overhead. The management
of resources ...
What people are saying - Write a review
LibraryThing ReviewUser Review - tomhudson - LibraryThing
The case study on the design of a multithreaded web server is really nice to give to advanced undergrdauates who are interested in high-performance web apps. Most of the book is a pattern catalog that hasn't found much application in my distributed projects so far. Read full review
Resource Lifecycle Manager
5 other sections not shown