Tagged articles
2072 articles
Page 15 of 21
Full-Stack Internet Architecture
Full-Stack Internet Architecture
Apr 12, 2021 · Backend Development

Understanding Java CyclicBarrier: Usage, Implementation Details, and Comparison with CountDownLatch

This article explains the concept, practical usage, internal implementation, and key methods of Java's CyclicBarrier, compares it with CountDownLatch, and provides a complete code example demonstrating how multiple threads can repeatedly synchronize at a reusable barrier.

CountDownLatchCyclicBarrierbackend-development
0 likes · 8 min read
Understanding Java CyclicBarrier: Usage, Implementation Details, and Comparison with CountDownLatch
Ops Development Stories
Ops Development Stories
Apr 12, 2021 · Backend Development

Mastering Zookeeper Distributed Locks: From Seckill to Read‑Write Locks

This article explains how Zookeeper’s distributed lock mechanisms—including non‑fair, fair, and read‑write locks—can prevent overselling in high‑traffic seckill scenarios, details their advantages and drawbacks, and provides practical Curator‑based Java implementations with code examples.

ZooKeeperconcurrencycurator
0 likes · 13 min read
Mastering Zookeeper Distributed Locks: From Seckill to Read‑Write Locks
Programmer DD
Programmer DD
Apr 11, 2021 · Backend Development

Understanding Server Thread Models: Blocking I/O, Reactor, and Proactor

This article explains how servers handle requests using process/thread models, covering traditional blocking I/O, the Reactor pattern with its single‑thread, multi‑thread, and master‑slave variants, and the Proactor model, while comparing their advantages, drawbacks, and typical use cases.

ProactorReactor PatternThread Model
0 likes · 12 min read
Understanding Server Thread Models: Blocking I/O, Reactor, and Proactor
Selected Java Interview Questions
Selected Java Interview Questions
Apr 9, 2021 · Backend Development

Understanding Java Thread Pools: Concepts, Creation, Execution Flow, and Common Types

This article explains Java thread pool fundamentals, including the purpose and advantages of using a pool, the parameters of ThreadPoolExecutor, the task execution workflow, saturation policies, and detailed descriptions of common pool types such as SingleThreadExecutor, FixedThreadPool, CachedThreadPool, and ScheduledThreadPool, plus a typical interview question about unbounded queues.

BackendExecutorServiceThreadPool
0 likes · 9 min read
Understanding Java Thread Pools: Concepts, Creation, Execution Flow, and Common Types
Java Interview Crash Guide
Java Interview Crash Guide
Apr 9, 2021 · Backend Development

Mastering Java Thread Pools: Benefits, Creation, Tuning & Monitoring

This article explores Java's thread pool framework in depth, covering its advantages, internal workflow, creation parameters, task submission, lifecycle states, tuning strategies, monitoring metrics, and common pitfalls, providing code examples and practical guidance for effective concurrency management in backend applications.

ThreadPoolExecutorconcurrencyjava
0 likes · 17 min read
Mastering Java Thread Pools: Benefits, Creation, Tuning & Monitoring
TAL Education Technology
TAL Education Technology
Apr 8, 2021 · Backend Development

Java Concurrency Programming: Concepts, Tools, and Practical Examples

This comprehensive guide introduces Java concurrency fundamentals, explains common tools and their underlying principles, discusses typical challenges such as thread safety, visibility, and ordering, and provides practical code examples and optimization techniques for building high‑performance multithreaded applications.

concurrencyjavamultithreading
0 likes · 16 min read
Java Concurrency Programming: Concepts, Tools, and Practical Examples
Top Architect
Top Architect
Apr 7, 2021 · Backend Development

20 Practical Examples of Using Java CompletableFuture for Asynchronous Programming

This article introduces Java's CompletableFuture and CompletionStage APIs, explains their contracts, and provides twenty concise code examples that demonstrate creating completed futures, running async stages, applying functions synchronously and asynchronously, handling exceptions, combining futures, using custom executors, and orchestrating multiple stages with allOf/anyOf.

AsynchronousCompletableFutureCompletionStage
0 likes · 16 min read
20 Practical Examples of Using Java CompletableFuture for Asynchronous Programming
Intelligent Backend & Architecture
Intelligent Backend & Architecture
Apr 7, 2021 · Fundamentals

Unlocking Java Concurrency: Master Threads, Locks, and Thread Pools

This comprehensive guide explains why concurrency is essential for modern systems, introduces core metrics like response time and throughput, outlines the three pillars of thread safety, compares concurrency with parallelism, and provides practical solutions for deadlocks, thread creation, synchronization, and efficient thread‑pool usage in Java.

SynchronizationThreadPoolconcurrency
0 likes · 87 min read
Unlocking Java Concurrency: Master Threads, Locks, and Thread Pools
Top Architect
Top Architect
Apr 6, 2021 · Backend Development

Why ConcurrentHashMap.get() in Java 8 Is Lock‑Free

The article explains how Java 8's ConcurrentHashMap implements a lock‑free get() operation by replacing the Segment design with Node objects, using volatile fields and CAS, and how the volatile‑marked table array ensures visibility during resizing, making reads both safe and efficient.

ConcurrentHashMapbackend-developmentconcurrency
0 likes · 10 min read
Why ConcurrentHashMap.get() in Java 8 Is Lock‑Free
Selected Java Interview Questions
Selected Java Interview Questions
Apr 5, 2021 · Backend Development

Understanding Thread Safety in Java: StringBuilder, StringBuffer, and Servlets

This article explains the thread‑safety differences between StringBuilder and StringBuffer, demonstrates the problems of using mutable shared objects in multithreaded Java code, presents three solutions, and discusses why Servlets are not thread‑safe by default, highlighting visibility and ordering concepts.

Servletbackend-developmentconcurrency
0 likes · 10 min read
Understanding Thread Safety in Java: StringBuilder, StringBuffer, and Servlets
Python Programming Learning Circle
Python Programming Learning Circle
Apr 2, 2021 · Fundamentals

Effective Python Parallelism with Thread Pools and the map() Function

This article critiques traditional Python threading tutorials and demonstrates how to replace verbose thread‑pool code with concise map‑based parallelism using multiprocessing and multiprocessing.dummy, providing practical examples, performance measurements, and guidelines for choosing pool sizes for I/O‑ and CPU‑bound tasks.

MAPParallelismconcurrency
0 likes · 11 min read
Effective Python Parallelism with Thread Pools and the map() Function
Byte Quality Assurance Team
Byte Quality Assurance Team
Mar 31, 2021 · Backend Development

Root Cause Analysis and Optimization of RocketMQ Message Dispatch in the Tesla Interface Testing Platform

The article investigates a performance bottleneck in Tesla's interface testing platform where large test tasks experience up to nine‑minute report delays, identifies the hidden latency in RocketMQ message dispatch to handlers, and proposes a redesign of channel scheduling that reduces execution time to under four minutes.

Channel SchedulingMessage QueueRocketMQ
0 likes · 6 min read
Root Cause Analysis and Optimization of RocketMQ Message Dispatch in the Tesla Interface Testing Platform
Code Ape Tech Column
Code Ape Tech Column
Mar 29, 2021 · Backend Development

Understanding Distributed Locks and Their Implementation with Redis and Zookeeper

Distributed locks ensure exclusive access across multiple servers in high-concurrency scenarios, and this article explains their necessity, illustrates problems with simple locks, and details practical implementations using Redis and Zookeeper, including lock acquisition, release, expiration handling, and avoiding deadlocks.

ZooKeeperconcurrencydistributed-lock
0 likes · 13 min read
Understanding Distributed Locks and Their Implementation with Redis and Zookeeper
Java Captain
Java Captain
Mar 28, 2021 · Backend Development

Analysis and Solutions for Redis Distributed Lock Over‑selling in High‑Concurrency Seckill Scenario

This article examines a real‑world flash‑sale incident where Redis distributed locks failed, causing severe overselling, and presents root‑cause analysis, safer lock implementation with Lua scripts, atomic stock handling, refactored Java code, and deeper reflections on lock necessity and further optimizations.

LuaSeckillconcurrency
0 likes · 10 min read
Analysis and Solutions for Redis Distributed Lock Over‑selling in High‑Concurrency Seckill Scenario
MaGe Linux Operations
MaGe Linux Operations
Mar 27, 2021 · Fundamentals

Ultimate Python Cheat Sheet: From Py2 vs Py3 Differences to Advanced Concurrency and Design Patterns

This comprehensive guide compiles essential Python knowledge—including Python 2 vs 3 changes, conversion tools, frequently used libraries, concurrency models, testing techniques, core language concepts, plus related topics such as networking, MySQL, Redis, Linux, design patterns, data structures, algorithms, and interview‑level questions—providing a one‑stop reference for developers seeking to deepen their Python expertise.

cheatsheetconcurrencylibraries
0 likes · 32 min read
Ultimate Python Cheat Sheet: From Py2 vs Py3 Differences to Advanced Concurrency and Design Patterns
NiuNiu MaTe
NiuNiu MaTe
Mar 23, 2021 · Backend Development

Quickly Master Go: Install, Code, Concurrency, and Testing

Learn how to set up Go in Linux, macOS, and Windows, understand its core syntax, manage packages, work with variables, arrays, slices, maps, control structures, goroutines, channels, interfaces, write unit tests, use Go Convey, connect databases with GORM, and build simple web servers with the standard library or Gin.

GoWeb Developmentbackend-development
0 likes · 20 min read
Quickly Master Go: Install, Code, Concurrency, and Testing
Java Interview Crash Guide
Java Interview Crash Guide
Mar 22, 2021 · Backend Development

Top 30 Java Interview Questions Every Backend Engineer Should Master

This article compiles 30 essential Java interview questions covering OOP fundamentals, collections, concurrency, JVM internals, Spring framework, and performance optimization, providing concise explanations and key concepts to help backend developers prepare effectively for technical interviews.

JVMconcurrencyinterview
0 likes · 10 min read
Top 30 Java Interview Questions Every Backend Engineer Should Master
Beike Product & Technology
Beike Product & Technology
Mar 19, 2021 · Backend Development

Implementing a PHP Coroutine Task Scheduler for Concurrent RPC and MySQL Access

This article presents a PHP coroutine‑based Task Scheduler that enables high‑concurrency RPC calls and asynchronous MySQL queries, explains its design and implementation with code examples, compares performance against traditional synchronous and HttpMultiClient approaches, and discusses task dependency handling using DAG and topological sorting.

AsyncRPCconcurrency
0 likes · 19 min read
Implementing a PHP Coroutine Task Scheduler for Concurrent RPC and MySQL Access
Open Source Linux
Open Source Linux
Mar 18, 2021 · Backend Development

How to Optimize Nginx for High Concurrency, Custom Errors, and Better Caching

This guide walks through customizing Nginx's 404 page, enabling the stub_status module to monitor server metrics, tuning worker processes and connection limits for higher concurrency, expanding client header buffers, and configuring static file caching to improve overall web performance.

Error Handlingcachingconcurrency
0 likes · 8 min read
How to Optimize Nginx for High Concurrency, Custom Errors, and Better Caching
Sohu Tech Products
Sohu Tech Products
Mar 17, 2021 · Mobile Development

Understanding and Using Schedulers in Swift Combine

This article explains the concept of Schedulers in the Swift Combine framework, compares the default scheduling behavior with explicit subscribe(on:) and receive(on:) operators, demonstrates various Scheduler implementations (ImmediateScheduler, RunLoop, DispatchQueue, OperationQueue) through detailed code examples, and provides practical guidance for managing thread execution in reactive iOS applications.

CombineSchedulerSwift
0 likes · 22 min read
Understanding and Using Schedulers in Swift Combine
Full-Stack Internet Architecture
Full-Stack Internet Architecture
Mar 13, 2021 · Fundamentals

Effective Java Practices: Builder Pattern, Object Creation, and Performance Optimizations

This article presents a collection of Java best‑practice guidelines—including using the Builder pattern for many constructor arguments, privatizing utility class constructors, minimizing object creation, avoiding finalizers, applying the Law of Demeter, preferring enums, and careful use of var‑args—to improve code readability, memory usage, and runtime performance.

Design PatternsMemory Managementbest practices
0 likes · 15 min read
Effective Java Practices: Builder Pattern, Object Creation, and Performance Optimizations
Java Backend Technology
Java Backend Technology
Mar 13, 2021 · Backend Development

Why Java 8 Parallel Streams Can Be Slower Than Simple Loops

A production incident shows that using Java 8 parallel streams for message processing can dramatically reduce throughput, making them slower than a straightforward for‑loop due to the shared ForkJoinPool and thread‑pool sizing issues.

ForkJoinPoolParallel Streamconcurrency
0 likes · 11 min read
Why Java 8 Parallel Streams Can Be Slower Than Simple Loops
Top Architect
Top Architect
Mar 11, 2021 · Fundamentals

Why ConcurrentHashMap.get() in Java 8 Is Lock‑Free

This article explains how Java 8's ConcurrentHashMap implements the get operation without acquiring locks by using volatile fields, CAS, and a simplified node structure, contrasting it with the segment‑based design of JDK 1.7 and detailing the memory‑visibility guarantees provided by volatile.

ConcurrentHashMapJDK8concurrency
0 likes · 9 min read
Why ConcurrentHashMap.get() in Java 8 Is Lock‑Free
FunTester
FunTester
Mar 11, 2021 · Operations

Accelerating Multi‑User Performance Tests with Java’s CyclicBarrier

This article explains how to eliminate the serial‑login bottleneck in multi‑user performance testing by using Java’s CyclicBarrier to synchronize user logins, then runs a two‑step insert‑update scenario with a custom FunTester class, complete with full code examples and result analysis.

BackendCyclicBarrierPerformance Testing
0 likes · 8 min read
Accelerating Multi‑User Performance Tests with Java’s CyclicBarrier
Tencent Database Technology
Tencent Database Technology
Mar 8, 2021 · Databases

Introduction to the InnoDB Lock Module and Its Performance Optimizations

This article provides a comprehensive overview of MySQL InnoDB's lock subsystem, describing its data structures, lock compatibility matrices, lock/unlock workflows, lock splitting, inheritance and migration, and presents several optimization techniques such as avoiding lock_sys mutex, asynchronous deadlock detection, and lock_sys mutex sharding to alleviate contention in MySQL 5.7 and later versions.

InnoDBLock Managerconcurrency
0 likes · 13 min read
Introduction to the InnoDB Lock Module and Its Performance Optimizations
Efficient Ops
Efficient Ops
Mar 7, 2021 · Backend Development

Boost Nginx Performance: Custom 404 Pages, Status Monitoring, and Concurrency Tuning

This guide walks through customizing Nginx 404 error pages, enabling and reading the stub_status module, increasing worker processes and connections, adjusting kernel limits, expanding header buffers, and configuring browser caching for static assets to dramatically improve server performance and reliability.

CacheNginxServer Monitoring
0 likes · 10 min read
Boost Nginx Performance: Custom 404 Pages, Status Monitoring, and Concurrency Tuning
ITPUB
ITPUB
Mar 2, 2021 · Fundamentals

Master OS Interview Questions: From Basics to Advanced Concepts

This comprehensive guide covers over forty operating system interview questions, explaining core concepts such as OS fundamentals, process and thread management, memory handling, file systems, I/O mechanisms, scheduling algorithms, and deadlock prevention, providing detailed answers and diagrams to help candidates excel in technical interviews.

Memory ManagementOperating SystemScheduling
0 likes · 65 min read
Master OS Interview Questions: From Basics to Advanced Concepts
Laravel Tech Community
Laravel Tech Community
Feb 27, 2021 · Fundamentals

Understanding Processes, Threads, Concurrency, and Process Pools

This article explains the concepts of processes and threads, their differences, interaction methods, the relationship between them, the three execution states of a task, the distinctions among parallel, concurrent, and serial execution, and the purpose and operation of process pools in operating systems.

Process PoolThreadconcurrency
0 likes · 10 min read
Understanding Processes, Threads, Concurrency, and Process Pools
360 Smart Cloud
360 Smart Cloud
Feb 25, 2021 · Backend Development

Understanding Distributed Locks: Concepts, System Classification, and Implementations with Redis and etcd/Zookeeper

This article explains the fundamentals of distributed locks, compares lock implementations based on asynchronous replication and Paxos protocols, and provides practical Redis and etcd/Zookeeper examples—including exclusive and shared lock mechanisms, code snippets, and usage considerations for reliability and safety.

BackendZooKeeperconcurrency
0 likes · 9 min read
Understanding Distributed Locks: Concepts, System Classification, and Implementations with Redis and etcd/Zookeeper
Tencent Cloud Developer
Tencent Cloud Developer
Feb 24, 2021 · Backend Development

Common Concurrency Bugs in Go and Their Fixes

Analyzing several major Go projects, the article catalogs frequent concurrency pitfalls—such as unbuffered channels, WaitGroup deadlocks, context leaks, loop‑variable races, double channel closes, timer errors, and RWMutex misuse—and offers concise, idiomatic fixes to prevent blocking, leaks, panics, and deadlocks.

ChannelsGoRaceConditions
0 likes · 10 min read
Common Concurrency Bugs in Go and Their Fixes
Top Architect
Top Architect
Feb 23, 2021 · Backend Development

Understanding Java 8 Stream API: Architecture, Parallelism, and Best Practices

This article explains the design and implementation of Java 8 Stream API, covering its composition, pipelining, internal iteration, parallel execution via ForkJoinPool, performance considerations, ordering semantics, and practical guidelines for using parallel streams effectively.

ForkJoinPoolParallel StreamsStream API
0 likes · 21 min read
Understanding Java 8 Stream API: Architecture, Parallelism, and Best Practices
Selected Java Interview Questions
Selected Java Interview Questions
Feb 21, 2021 · Fundamentals

Understanding Double-Checked Locking Singleton Pattern in Java

This article explains the double-checked locking implementation of the Singleton pattern in Java, detailing why two null checks are necessary, the role of the volatile keyword in preventing instruction reordering and ensuring visibility across threads, and provides a complete example code.

Singletonconcurrencydouble-checked locking
0 likes · 5 min read
Understanding Double-Checked Locking Singleton Pattern in Java
FunTester
FunTester
Feb 20, 2021 · Backend Development

How I Stress‑Tested a Socket.IO Service with Fixed QPS and Uncovered Hidden Bugs

After mastering the Socket protocol and a fixed‑QPS load‑testing model, I built a comprehensive Socket.IO performance test that simulates a teacher‑student scenario, measures message latency, identifies calculation errors and logging overhead, and reveals several bugs and optimization opportunities in the asynchronous handling and compensation threads.

Load TestingSocket.IOconcurrency
0 likes · 10 min read
How I Stress‑Tested a Socket.IO Service with Fixed QPS and Uncovered Hidden Bugs
Programmer DD
Programmer DD
Feb 19, 2021 · Backend Development

Mastering Lazy Initialization and Stream Laziness in Java 8

This article explains the difference between eager and lazy evaluation, shows when and how to use lazy initialization in Java, demonstrates Supplier‑based lazy loading, virtual proxy patterns, and stream laziness with infinite streams and prime number generation, all with concrete code examples.

StreamSupplierconcurrency
0 likes · 12 min read
Mastering Lazy Initialization and Stream Laziness in Java 8
Top Architect
Top Architect
Feb 10, 2021 · Backend Development

Understanding Thread Safety Issues in Java ArrayList and How to Fix Them

This article explains why Java's ArrayList is not thread‑safe, illustrates the two main concurrency problems—array index out‑of‑bounds and element overwriting—through source‑code analysis and multithreaded examples, and presents several practical solutions such as synchronized wrappers, explicit locking, CopyOnWriteArrayList and ThreadLocal.

ArrayListCollectionsCopyOnWriteArrayList
0 likes · 11 min read
Understanding Thread Safety Issues in Java ArrayList and How to Fix Them
FunTester
FunTester
Feb 7, 2021 · Backend Development

Using ThreadLocal for Collect/Uncollect Performance Testing in Java

This article demonstrates how to apply Java's ThreadLocal together with an AtomicInteger to generate unique minisource_id values for a collect‑and‑uncollect workflow, and shows the complete code modifications and performance‑test script used to measure request latency.

BackendThreadLocalconcurrency
0 likes · 6 min read
Using ThreadLocal for Collect/Uncollect Performance Testing in Java
FunTester
FunTester
Feb 6, 2021 · Fundamentals

Mastering Java ThreadLocal: Achieve Thread‑Safe Objects Without synchronized

This article explains how Java's ThreadLocal class provides a thread‑local storage mechanism that creates independent object instances for each thread, improving scalability and performance compared to synchronized blocks, and demonstrates its usage with practical code examples and best‑practice guidelines.

ThreadLocalbackend-developmentconcurrency
0 likes · 8 min read
Mastering Java ThreadLocal: Achieve Thread‑Safe Objects Without synchronized
Senior Brother's Insights
Senior Brother's Insights
Feb 1, 2021 · Backend Development

Mastering Java Thread Pools: When to Use Each Executor Type

This article explains the concept of thread pools, compares seven creation methods in Java, details their parameters, execution flow, and rejection policies, and provides practical code examples to help developers choose the most appropriate pool for reliable and efficient multithreaded programming.

ExecutorServiceThreadPoolThreadPoolExecutor
0 likes · 17 min read
Mastering Java Thread Pools: When to Use Each Executor Type
macrozheng
macrozheng
Jan 25, 2021 · Backend Development

Designing a Flexible Java ThreadPoolExecutor: From Basics to Advanced Features

This article walks through building a custom thread pool executor in Java, starting with a simple thread creation example, evolving through multiple design iterations, and culminating in a full-featured implementation that supports core and maximum pool sizes, task queues, thread factories, and rejection policies.

ExecutorThreadPoolExecutorconcurrency
0 likes · 10 min read
Designing a Flexible Java ThreadPoolExecutor: From Basics to Advanced Features
Full-Stack Internet Architecture
Full-Stack Internet Architecture
Jan 24, 2021 · Backend Development

Understanding and Using AtomicReference for Thread‑Safe Updates in Java

This article explains the limitations of volatile for compound updates, demonstrates non‑thread‑safe bank‑account examples, introduces synchronized locking, and then shows how AtomicReference with CAS operations provides a lock‑free, thread‑safe solution, including a deep dive into its internal implementation and related memory‑barrier concepts.

AtomicReferenceCASThreadSafety
0 likes · 14 min read
Understanding and Using AtomicReference for Thread‑Safe Updates in Java
Full-Stack Internet Architecture
Full-Stack Internet Architecture
Jan 13, 2021 · Backend Development

Understanding Java's AbstractQueuedSynchronizer (AQS) and Concurrency Utilities

This article provides an in-depth explanation of Java's AbstractQueuedSynchronizer (AQS) framework, covering its role in JUC concurrency utilities such as locks, semaphores, CountDownLatch, ReentrantReadWriteLock, and Condition, including template methods, state management, node structures, queue algorithms, and practical code examples.

AQSConditionJUC
0 likes · 25 min read
Understanding Java's AbstractQueuedSynchronizer (AQS) and Concurrency Utilities
Full-Stack Internet Architecture
Full-Stack Internet Architecture
Jan 8, 2021 · Backend Development

Deep Dive into Java HashMap, ConcurrentHashMap, JMM, and Concurrency Fundamentals

This article provides a comprehensive overview of Java's HashMap and ConcurrentHashMap implementations, explains core concurrency concepts such as thread states, the differences between concurrency and parallelism, memory models, volatile semantics, singleton patterns, thread pools, ThreadLocal, CAS, and the AQS framework.

HashMapJMMSingleton
0 likes · 31 min read
Deep Dive into Java HashMap, ConcurrentHashMap, JMM, and Concurrency Fundamentals
Top Architect
Top Architect
Jan 7, 2021 · Fundamentals

Android HashMap Source Code Analysis (Based on Android SDK 28)

This article provides a detailed analysis of the Android HashMap implementation in SDK 28, covering its fields, internal Node class, constructors, resizing logic, hash function, collision handling, and related Map implementations, with complete source code excerpts and performance considerations.

AndroidCollisionResolutionDataStructure
0 likes · 34 min read
Android HashMap Source Code Analysis (Based on Android SDK 28)
vivo Internet Technology
vivo Internet Technology
Jan 6, 2021 · Fundamentals

Deep Dive into Java Volatile Keyword: CPU Cache, MESI Protocol, and JMM

The article thoroughly explains how CPU caches and the MESI coherence protocol interact with Java’s Memory Model, detailing the volatile keyword’s role in ensuring visibility and preventing instruction reordering, and illustrates these concepts with examples such as visibility problems and double‑checked locking.

CPU cacheInstruction ReorderingJMM
0 likes · 22 min read
Deep Dive into Java Volatile Keyword: CPU Cache, MESI Protocol, and JMM
Full-Stack Internet Architecture
Full-Stack Internet Architecture
Jan 4, 2021 · Backend Development

Understanding ThreadPoolExecutor keepAliveTime=0 in Java

This article clarifies that setting keepAliveTime to 0 in a Java ThreadPoolExecutor causes excess idle threads beyond corePoolSize to terminate immediately, correcting the common misconception that 0 means threads live forever, and demonstrates the behavior with a concise code example.

ExecutorServiceThreadPoolThreadPoolExecutor
0 likes · 4 min read
Understanding ThreadPoolExecutor keepAliveTime=0 in Java
Architecture Digest
Architecture Digest
Jan 3, 2021 · Operations

Understanding How Many Concurrent TCP Connections a Server Can Actually Support

This article explains the true limits of concurrent TCP connections on a server, debunks common misconceptions about port numbers, details the TCP four‑tuple theory, outlines Linux file‑descriptor restrictions, shows how to tune kernel buffers with sysctl, and shares a real‑world test achieving one million active connections.

LinuxTCPconcurrency
0 likes · 6 min read
Understanding How Many Concurrent TCP Connections a Server Can Actually Support
ITPUB
ITPUB
Dec 31, 2020 · Operations

How Many TCP Connections Can One Server Really Handle? A Deep Dive into Linux Limits

This article demystifies common misconceptions about server concurrency, explains the theoretical maximum TCP connections based on the four‑tuple, details Linux file‑descriptor and buffer limits, and walks through a practical experiment that achieves over one million simultaneous connections on a single machine.

LinuxTCPconcurrency
0 likes · 7 min read
How Many TCP Connections Can One Server Really Handle? A Deep Dive into Linux Limits
FunTester
FunTester
Dec 31, 2020 · Operations

Speed Up Load Test Preparation with Java CyclicBarrier

This article explains how to use Java's CyclicBarrier and related concurrency utilities to parallelize user login preparation for load testing, reducing setup time and synchronizing multi‑stage performance tests with concrete code examples and sample console output.

CyclicBarrierLoad TestingPerformance Testing
0 likes · 8 min read
Speed Up Load Test Preparation with Java CyclicBarrier
Liangxu Linux
Liangxu Linux
Dec 30, 2020 · Backend Development

Master High-Performance Backend Development: 10 Essential Techniques

This guide walks developers through a step‑by‑step progression of performance‑boosting techniques—including zero‑copy I/O, epoll, thread pools, lock‑free programming, IPC, RPC, database indexing, caching, Bloom filters, full‑text search, and load balancing—to help build faster, more scalable backend services.

Backend PerformanceI/O optimizationRPC
0 likes · 22 min read
Master High-Performance Backend Development: 10 Essential Techniques
Liangxu Linux
Liangxu Linux
Dec 30, 2020 · Backend Development

How Servers Serve Millions: Processes, Threads, and Event Loops Explained

This article explains how servers handle massive concurrent requests by evolving from simple multi‑process models to lightweight threads, then to event‑driven architectures with I/O multiplexing, highlighting the trade‑offs of blocking versus non‑blocking I/O and the role of coroutines.

IO MultiplexingNon-blocking IOThreads
0 likes · 12 min read
How Servers Serve Millions: Processes, Threads, and Event Loops Explained
Java Interview Crash Guide
Java Interview Crash Guide
Dec 29, 2020 · Backend Development

How Distributed Locks Prevent Chaos in Massive Red‑Packet Systems

This article explains why traditional locks fail under massive concurrent traffic, how distributed locks coordinate multiple servers to ensure correct total payouts, and compares Redis and Zookeeper implementations, highlighting their mechanisms, pitfalls, and practical considerations for large‑scale systems.

ScalabilityZooKeeperconcurrency
0 likes · 13 min read
How Distributed Locks Prevent Chaos in Massive Red‑Packet Systems
Full-Stack Internet Architecture
Full-Stack Internet Architecture
Dec 25, 2020 · Backend Development

CountDownLatch in Java: Usage, Examples, and Source Code Analysis

This article introduces Java's CountDownLatch synchronization tool, explains its purpose as a gate or counter, demonstrates basic and advanced usage with code examples—including a simple counter and a student race scenario—and provides an in‑depth analysis of its underlying AQS‑based source code.

AQSCountDownLatchconcurrency
0 likes · 15 min read
CountDownLatch in Java: Usage, Examples, and Source Code Analysis
360 Quality & Efficiency
360 Quality & Efficiency
Dec 25, 2020 · Backend Development

Evolution of Redis Distributed Locks and Redisson Implementation Analysis

This article explains how distributed lock requirements arise when scaling from monolithic to multi‑server architectures, reviews the evolution of Redis‑based locking mechanisms from simple SETNX to Lua scripts and Redisson's advanced features, and provides detailed source‑code analysis of Redisson's lock, unlock, and lock acquisition implementations.

Lockconcurrencyredis
0 likes · 12 min read
Evolution of Redis Distributed Locks and Redisson Implementation Analysis
macrozheng
macrozheng
Dec 24, 2020 · Backend Development

Mastering Java Thread Pools: When and How to Choose the Right One

This article explains the concept of thread pools, compares seven creation methods—including FixedThreadPool, CachedThreadPool, and ThreadPoolExecutor—covers their parameters, execution flow, and rejection policies, and offers guidance on selecting the most appropriate pool for Java applications.

ExecutorServiceThreadPoolconcurrency
0 likes · 20 min read
Mastering Java Thread Pools: When and How to Choose the Right One
Refining Core Development Skills
Refining Core Development Skills
Dec 23, 2020 · Fundamentals

Understanding Linux TCP Socket Internals and Port Range Configuration

This article explains how to adjust Linux kernel port ranges and file descriptor limits, explores the internal structures of TCP sockets, and walks through key kernel functions such as tcp_v4_rcv and __inet_lookup that locate sockets based on IP and port tuples, providing practical guidance for increasing TCP concurrency.

Linux kernelNetworkingPort Range
0 likes · 8 min read
Understanding Linux TCP Socket Internals and Port Range Configuration
Code Ape Tech Column
Code Ape Tech Column
Dec 17, 2020 · Backend Development

108 Essential Java Multithreading Interview Questions and Answers

This comprehensive guide compiles 108 common Java multithreading interview questions, covering the purpose of concurrency, thread creation methods, lifecycle nuances, synchronization utilities, memory visibility, thread safety levels, debugging techniques, executor frameworks, concurrent collections, atomic operations, lock implementations, and best‑practice recommendations.

ExecutorSynchronizationThread
0 likes · 59 min read
108 Essential Java Multithreading Interview Questions and Answers
High Availability Architecture
High Availability Architecture
Dec 16, 2020 · Backend Development

Implementing Task Scheduling Dependencies and Workflow with Go and DAG

This article explains the concepts of task scheduling dependencies and workflow, introduces graph theory basics such as vertices, edges, and DAGs, and provides a complete Go implementation—including graph structures, BFS traversal, topological sorting, and concurrent execution—to efficiently manage dependent tasks in distributed systems.

DAGGoconcurrency
0 likes · 10 min read
Implementing Task Scheduling Dependencies and Workflow with Go and DAG
Full-Stack Internet Architecture
Full-Stack Internet Architecture
Dec 16, 2020 · Backend Development

Using Condition to Replace wait/notify for Safer and Faster Java Thread Communication

This article explains why Java's Condition class should replace wait/notify for thread communication, demonstrates the thread‑livelock problem with notify, shows how Condition avoids it, compares performance with notifyAll, and provides complete code examples for producer‑consumer scenarios.

ConditionThread Communicationconcurrency
0 likes · 13 min read
Using Condition to Replace wait/notify for Safer and Faster Java Thread Communication
Programmer DD
Programmer DD
Dec 11, 2020 · Backend Development

Why Does Executors.newSingleThreadExecutor Shut Down Unexpectedly? Uncovering GC and Finalize Mysteries

This article investigates the intermittent RejectedExecutionException caused by Executors.newSingleThreadExecutor, explains how Java's garbage collector and finalize method can prematurely shut down thread pools, demonstrates the behavior with reproducible code, and shows how newer JDK versions have fixed the issue.

GarbageCollectionThreadPoolconcurrency
0 likes · 11 min read
Why Does Executors.newSingleThreadExecutor Shut Down Unexpectedly? Uncovering GC and Finalize Mysteries
MaGe Linux Operations
MaGe Linux Operations
Dec 10, 2020 · Backend Development

Is Async Python Really Faster? Uncover the Sync vs Async Truth

This article explains the difference between synchronous and asynchronous Python, how each model handles concurrency, the two main async implementations (coroutine‑based and greenlet‑based), and when async can actually outperform sync in high‑load, I/O‑bound scenarios.

AsyncBackendSynchronization
0 likes · 12 min read
Is Async Python Really Faster? Uncover the Sync vs Async Truth
Architecture Digest
Architecture Digest
Dec 9, 2020 · Backend Development

Implementing Distributed Locks with Redis: Concepts, Algorithms, and Code Examples

This article explains how to implement distributed locks using Redis, covering the essential requirements of mutual exclusion, deadlock avoidance, and fault tolerance, detailing single‑instance and multi‑instance algorithms, code examples with SETNX and Lua scripts, and discussing challenges such as latency, crashes, and persistence.

backend-developmentconcurrencyfault tolerance
0 likes · 10 min read
Implementing Distributed Locks with Redis: Concepts, Algorithms, and Code Examples
ITPUB
ITPUB
Dec 8, 2020 · Operations

How Many TCP Connections Can One Server Really Handle? A Deep Dive into Linux Limits

This article demystifies the true maximum number of concurrent TCP connections a single Linux server can sustain, explaining the theoretical limits of the TCP four‑tuple, the practical constraints imposed by file descriptor and memory settings, and walks through a real‑world experiment achieving one million connections.

LinuxNetworkingServer
0 likes · 6 min read
How Many TCP Connections Can One Server Really Handle? A Deep Dive into Linux Limits
JD Retail Technology
JD Retail Technology
Dec 1, 2020 · Fundamentals

In‑Depth Source Code Analysis of Kotlin Coroutines: Launch, Suspension, and Resumption

This article provides a comprehensive source‑code walkthrough of Kotlin coroutines, explaining how launch creates a coroutine, how the compiler transforms suspend functions into state‑machine classes, and detailing the mechanisms of suspension and resumption through Continuation, Dispatchers, and the coroutine scheduler.

AsyncCoroutinesDispatcher
0 likes · 46 min read
In‑Depth Source Code Analysis of Kotlin Coroutines: Launch, Suspension, and Resumption
Programmer DD
Programmer DD
Nov 30, 2020 · Backend Development

How Many Threads Are Optimal? Mastering Thread Pool Sizing for Maximum Performance

This article explains why multithreading improves program performance, distinguishes latency reduction from throughput increase, and provides practical formulas to determine the ideal number of threads for both I/O‑bound and CPU‑bound workloads, helping you fully utilize hardware resources.

I/O Boundconcurrencycpu-utilization
0 likes · 4 min read
How Many Threads Are Optimal? Mastering Thread Pool Sizing for Maximum Performance
Selected Java Interview Questions
Selected Java Interview Questions
Nov 24, 2020 · Backend Development

Understanding Java BlockingQueue: Concepts, Implementations, and a Custom Example

This article explains the fundamentals of queues and blocking queues, describes how Java's java.util.concurrent.BlockingQueue works, outlines its main methods and common implementations, and provides a complete custom BlockingQueue source code example for multithreaded producer‑consumer scenarios.

BlockingQueuebackend-developmentconcurrency
0 likes · 10 min read
Understanding Java BlockingQueue: Concepts, Implementations, and a Custom Example
Architecture Digest
Architecture Digest
Nov 18, 2020 · Backend Development

Deep Dive into Java ConcurrentHashMap: Implementation, Concurrency Mechanisms, and Core Methods

This article provides a comprehensive analysis of Java's ConcurrentHashMap, covering its historical evolution, key internal fields, the thread‑safe put and remove operations, the complex resizing and transfer mechanisms, and auxiliary methods such as size, get, and clear, all illustrated with original source code.

ConcurrentHashMapData StructuresJDK
0 likes · 24 min read
Deep Dive into Java ConcurrentHashMap: Implementation, Concurrency Mechanisms, and Core Methods
Laravel Tech Community
Laravel Tech Community
Nov 15, 2020 · Databases

MySQL Lock Types and Deadlock Causes with Practical Examples

This article explains MySQL's three lock levels—table, row, and page—describes next‑key, gap, and record locks, analyzes why deadlocks occur, and provides multiple real‑world examples and prevention strategies, including code snippets for reproducible scenarios.

InnoDBLocksconcurrency
0 likes · 12 min read
MySQL Lock Types and Deadlock Causes with Practical Examples
MaGe Linux Operations
MaGe Linux Operations
Nov 15, 2020 · Backend Development

Why Distributed Locks Matter: Redis vs Zookeeper Explained

This article examines the stock‑oversell problem in high‑concurrency e‑commerce systems, explains why native JVM locks fail in multi‑machine deployments, and compares practical distributed‑lock solutions using Redis (including RedLock and Redisson) and Zookeeper (with Curator), highlighting their advantages, drawbacks, and selection guidelines.

Backendconcurrencydistributed-lock
0 likes · 18 min read
Why Distributed Locks Matter: Redis vs Zookeeper Explained