Guava Cache: A High-Performance JVM-Level In-Memory Caching Library
Guava Cache is a robust, thread-safe in-memory caching library provided by Google's Guava toolkit. Built atop principles similar to ConcurrentHashMap, it extends core map functionality with rich cache-specific features—such as expiration, size constraints, automatic loading, and fine-grained concurrency control—while remaining lightweight and z ...
Posted on Tue, 12 May 2026 13:51:32 +0000 by waterox
Optimizing Concurrent Task Execution with Java Thread Pools
Understanding Thread Pool Fundamentals
In Java concurrency programming, thread pools serve as a critical mechanism for decoupling task submission from thread lifecycle management. By reusing existing worker threads instead of constantly spawning and terminating them, applications achieve lower latency, reduced memory footprint, and improved thr ...
Posted on Mon, 11 May 2026 12:05:10 +0000 by dannon
ThreadPoolExecutor Configuration and Execution Patterns in Java
The ThreadPoolExecutor accepts seven arguments governing thread lifecycle and task dispatching:
new ThreadPoolExecutor(
2, // basePoolSize
10, // ceilingPoolSize
30L, // idleThreshold
TimeUnit.SECONDS,
new LinkedBlockingQueue<>(100),
Executors.defaultThr ...
Posted on Mon, 11 May 2026 10:29:56 +0000 by dougal85
Understanding the Underlying Mechanisms of CompletableFuture in Java
Understanding the Underlying Mechanisms of CompletableFuture in Java
CompletableFuture, introduced in Java 8, represents a fundamental advancement in asynchronous programming. Compared to traditional Future implementations, it offers greater flexibility through support for callbacks, composition, and sophisticated exception handling. The under ...
Posted on Mon, 11 May 2026 07:48:34 +0000 by xzilla
Avoiding Common Pitfalls When Using Java Semaphore
A Semaphore can be used to restrict concurrent access to a shared resource. However, subtle errors in its usage can lead to unexpected behavior, such as threads becoming blocked or the semaphore's permit count becoming incorrect.
Consider a scenario where three threads attempt to acquire permits from a Semaphore initialized with a count of 2. A ...
Posted on Mon, 11 May 2026 00:20:40 +0000 by Cory94bailly
Python Multiprocessing: Concepts and Implementation
Understanding Processes
A process can be understood as an executing program or application. In operating systems, processes serve as the fundamental units for resource allocation.
Think of a real-world company as a process: the company provides resources (computers, desks, etc.), while the employees who perform the actual work represent threads ...
Posted on Sun, 10 May 2026 19:35:16 +0000 by mmtalon
Core Java Interview Essentials: Collections, Concurrency, JVM, and Common Frameworks
Redis Caching Strategies and Reliability
Cache Penetration
A common problem arises when querying for data that does not exist either in the cache or the database. Each such request bypasses the cache, generating unnecessary data base load.
Solution One: Null Object Caching
If a query returns no data from the database, store a null or empty resu ...
Posted on Sun, 10 May 2026 19:03:48 +0000 by Loki88
Python Threads: Concepts and Implementation Examples
1. Thread Introduction
Threads are the execution units within a process (a process allocates memory/resources, while threads execute code). Unlike processes, threads do not require new memory space or code duplication, making them lighter and faster to create.
Why Use Threads?
Threads are cheaper than processes (no memory allocation or code co ...
Posted on Sun, 10 May 2026 14:38:52 +0000 by goodgeneguo
Analyzing the Feasibility of Multi-Threaded Transactions
In database theory, the concept of a 'multi-threaded transaction' is fundamentally contradictory. To understand why, one must look at the ACID properties—specifically Isolation. Transactions are designed to operate within an isolated context, typically managed by thread-local storage in frameworks like Spring. Each thread maintains its own data ...
Posted on Sun, 10 May 2026 09:30:30 +0000 by AlGale
Using wait and notify for Thread Coordination in Java
In multithreaded Java programs, the wait() method allows a thread to pause execution until another thread delivers a notification via notify() or notifyAll(). These methods must be invoked inside a synchronized context on the same monitor object.
Sequence of Operations
flowchart TD
A[Acquire Monitor Lock] --> B[Thread Invokes wait]
B ...
Posted on Sun, 10 May 2026 04:49:01 +0000 by mcog_esteban