Chapter 10: Performance Patterns Flashcards

1
Q

What are performance patterns?

A

Performance patterns are best practices for producing responsive and scalable software.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What is the fast path pattern?

A

Focused on improving the response time of the system by decreasing heavy workloads.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

What is the first things first pattern?

A

Focuses on the important processing tasks to ensure that if all processes cannot be completed in time at least the most important ones are finished.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

What is the coupling pattern?

A

Match the interface of an object with its most frequent uses.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

What is the problem/solution to coupling pattern?

A

Problem: Applications use fine-grained objects to request information

Solution:

  1. Use more coarse-grained objects to eliminate frequent requests for small amount of information
  2. Use the centering principle to find the most heavy workload.
  3. Use the locality principle to combine information
  4. Use processing vs frequency principle to minimize the total processing needed or interface
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

What is the problem/solution to first things first path pattern?

A

Problem: Temporary overload may cause input data to be lost or response times to be low

Solution: Assign priorities to tasks and execute them so that the most important activities receive preference.

CENTERING PRINCIPLE

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

What is the solution to the first things first pattern?

A

Use the centering principle to focus on the most important work

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

What is the batching pattern?

A

Combines frequent requests to services to reduce the overhead of starting a brand new request include initialization and termination.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

What is the problem/solution to the batching pattern?

A

Problem: Requested tasks require considerable amount overhead processing for initialization, termination, and in distributed systems, for transmitting data and requests

Solution: Use the processing vs frequency principle to minimize {processing times x frequency of requests}

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

What is the flex time pattern?

A

Spread the demand for high-usage objects temporally to a different period of time

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Solution to flex time pattern?

A

Apply the spread-the-load principle

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

What is the slender cyclic functions pattern?

A

Concerned with processing that must execute at regular intervals.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

What is the solution to the slender cyclic function?

A

Use both the centering principle and shared resource principle.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

What is the alternate paths principle?

A

Spread the demand for high-usage objects spatially to different objects or locations

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Solution to alternate paths principle

A

Apply the spread-the-load principle

How well did you know this?
1
Not at all
2
3
4
5
Perfectly