Week 8 - Applications

0.0(0)
Studied by 0 people
call kaiCall Kai
learnLearn
examPractice Test
spaced repetitionSpaced Repetition
heart puzzleMatch
flashcardsFlashcards
GameKnowt Play
Card Sorting

1/9

encourage image

There's no tags or description

Looks like no tags are added yet.

Last updated 7:07 PM on 4/28/26
Name
Mastery
Learn
Test
Matching
Spaced
Call with Kai

No analytics yet

Send a link to your students to track their progress

10 Terms

1
New cards

Application History

The practice of regularly capturing and archiving application-level metrics (e.g., response times, user counts, API requests) via daemons to identify long-term performance trends[cite: 2266, 2268, 2272, 2273, 2274].

2
New cards

Apdex (Application Performance Index)

A standard metric calculated as (satisfactory + 0.5 * tolerable + 0 * frustrating) divided by total calls[cite: 2284, 2285].

3
New cards

Polling Anti-Pattern

An inefficient algorithm design that wastes CPU cycles by repeatedly checking for state changes; it should be replaced with Pub/Sub or event-driven architectures[cite: 2299, 2300].

4
New cards

Code Hotspots

Frequently executed or highly contended sections of code (critical sections) where multiple threads funnel through. Parallelizing these areas yields the highest performance returns[cite: 2336, 2337, 2342, 2343].

5
New cards

Compiled vs. Interpreted Languages

Compiled languages (C, C++) translate directly to fast executables but require manual memory management. Interpreted languages (Java, Python) run on VMs (engines), offering automated memory management but carrying higher runtime overhead[cite: 2364, 2366, 2369, 2373, 2379, 2386, 2387, 2389].

6
New cards

Off-CPU Profiling

The practice of analyzing why threads are not actively running (e.g., blocked by disk I/O, network constraints, or locks) to identify and reduce resource contention[cite: 2410, 2411, 2414, 2415].

7
New cards

Thread State Analysis

Monitoring threads to see their current operating state, such as User/Kernel (executing), Runnable (waiting for CPU), Swapping (waiting for virtual memory), Sleeping, or Locked[cite: 2436, 2437, 2438, 2439, 2441, 2442].

8
New cards

Distributed Tracing

Using a unique identifier (like an Oracle ecid) that is logged across multiple systems to track a single transaction through a distributed, multi-system architecture[cite: 2458, 2459, 2460].

9
New cards

Java Flight Recorder (JFR)

A profiling tool built into the JVM that captures detailed metrics about events, memory allocation, and thread contention with very low overhead (<1%), viewable via Java Mission Control (JMC)[cite: 2805, 2807, 2812].

10
New cards

String Allocation Performance

Strings are generally the most allocated object type and are immutable in Java/C++/Python, causing significant heap contention on multiprocessor machines when used excessively (e.g., concatenating strings in debug logs)[cite: 4190, 4192, 4196, 4198, 4201, 4202].