Tagged articles
2072 articles
Page 19 of 21
Programmer DD
Programmer DD
Apr 28, 2019 · Operations

How to Achieve a 50,000‑User Load Test with JMeter & BlazeMeter

This guide walks you through the complete process of planning, scripting, locally testing, and scaling a load test to over 50,000 concurrent users using JMeter and BlazeMeter, covering script creation, sandbox configuration, engine sizing, cluster setup, and master‑slave orchestration.

BlazeMeterJMeterLoad Testing
0 likes · 12 min read
How to Achieve a 50,000‑User Load Test with JMeter & BlazeMeter
Full-Stack Internet Architecture
Full-Stack Internet Architecture
Apr 19, 2019 · Backend Development

Eight Little‑Known Java Facts You Might Not Know

This article explores eight obscure Java language facts—from the unused goto keyword and integer caching to Unicode‑escaped comments, flexible array declarations, hidden object creation with new String, JVM instruction reordering, and a study showing most Java code adds little value—providing concise explanations and code examples for each.

LanguageMemoryTips
0 likes · 8 min read
Eight Little‑Known Java Facts You Might Not Know
Didi Tech
Didi Tech
Apr 18, 2019 · Fundamentals

Understanding Go's Syscall Mechanism and Runtime Interaction

Go’s syscall mechanism uses assembly‑implemented entry functions like Syscall and Syscall6 to invoke the kernel, while the runtime’s entersyscall and exitsyscall hooks notify the scheduler, allowing P resources to be released during blocking calls and handling privileged low‑level syscalls separately.

GoSchedulerconcurrency
0 likes · 17 min read
Understanding Go's Syscall Mechanism and Runtime Interaction
21CTO
21CTO
Apr 11, 2019 · Backend Development

Mastering Java Concurrency: Threads, Locks, ThreadPools, and More

This comprehensive guide explores Java concurrency fundamentals—including processes, threads, daemon threads, thread states, synchronization methods, scheduling algorithms, wait vs. sleep, ThreadLocal, locks, volatile, CAS, Unsafe, thread pools, executor policies, blocking queues, Fork/Join, atomic classes, barriers, semaphores, deadlock, IPC, and interruption—providing essential knowledge for building high‑performance backend systems.

LockSynchronizationThreadPool
0 likes · 26 min read
Mastering Java Concurrency: Threads, Locks, ThreadPools, and More
ITPUB
ITPUB
Apr 10, 2019 · Backend Development

Top 45 Java Performance Tips Every Developer Should Follow

This guide presents 45 practical Java performance optimization techniques—ranging from proper use of singletons and final modifiers to efficient collection handling and avoiding costly operations—helping developers write faster, more memory‑efficient code.

Memory Managementbest practicesconcurrency
0 likes · 19 min read
Top 45 Java Performance Tips Every Developer Should Follow
Architect's Tech Stack
Architect's Tech Stack
Apr 1, 2019 · Databases

Comprehensive Guide to Common Redis Issues and Their Solutions

This article provides an in‑depth overview of why Redis is used, its drawbacks, the reasons behind its single‑threaded speed, data types and use‑cases, expiration policies, memory eviction strategies, consistency challenges with databases, and practical solutions for cache penetration, cache avalanche, and concurrent key competition.

Data ConsistencyMemory Managementcaching
0 likes · 15 min read
Comprehensive Guide to Common Redis Issues and Their Solutions
Mafengwo Technology
Mafengwo Technology
Mar 28, 2019 · Backend Development

Boosting Search Performance with a Golang Concurrent Proxy

This article explains how Mafengwo transformed its search service by replacing serial function calls with a Golang‑based concurrent proxy, reducing average latency from 400‑500 ms to around 240 ms while improving scalability, fault tolerance, and resource utilization.

GolangProxySearch Architecture
0 likes · 6 min read
Boosting Search Performance with a Golang Concurrent Proxy
Didi Tech
Didi Tech
Mar 28, 2019 · Backend Development

Distributed Locks: Concepts, Evolution, and Implementation Strategies

Distributed locks provide mutual exclusion across multiple nodes in scalable, reliable systems, and can be implemented via simple Redis SETNX/EX patterns, ZooKeeper’s EPHEMERAL_SEQUENTIAL znodes with watches, or Redisson’s advanced Java‑centric primitives, each offering distinct trade‑offs in simplicity, consistency, and feature richness.

System DesignZooKeeperconcurrency
0 likes · 21 min read
Distributed Locks: Concepts, Evolution, and Implementation Strategies
Mike Chen's Internet Architecture
Mike Chen's Internet Architecture
Mar 14, 2019 · Backend Development

Understanding Java Thread Pools: Origins, Benefits, Risks, Principles, Configuration, and Implementations

This article explains the origin of Java thread pools, outlines their advantages and potential risks such as deadlocks and resource exhaustion, describes their internal states and processing flow, provides guidance on sizing for CPU‑ or I/O‑bound tasks, and reviews the four common thread‑pool implementations.

backend-developmentconcurrencyjava
0 likes · 8 min read
Understanding Java Thread Pools: Origins, Benefits, Risks, Principles, Configuration, and Implementations
Architect's Tech Stack
Architect's Tech Stack
Mar 14, 2019 · Fundamentals

Comprehensive Java Interview Questions and Answers Overview

This article compiles a comprehensive set of Java interview questions covering core fundamentals, concurrency, thread management, locking mechanisms, database concepts, and JVM internals, providing concise prompts for candidates to prepare effectively for technical interviews.

JVMconcurrencyfundamentals
0 likes · 6 min read
Comprehensive Java Interview Questions and Answers Overview
Java Captain
Java Captain
Mar 14, 2019 · Backend Development

Why Combining synchronized with @Transactional Causes Thread‑Safety Issues in Spring and How to Resolve Them

The article explains why using the synchronized keyword together with Spring's @Transactional annotation can lead to lost updates when many threads increment a database field, analyzes the underlying transaction‑proxy interaction, and presents a refactored solution that moves the lock to a separate service to ensure correct results.

concurrencyjavaspring
0 likes · 7 min read
Why Combining synchronized with @Transactional Causes Thread‑Safety Issues in Spring and How to Resolve Them
Youzan Coder
Youzan Coder
Mar 6, 2019 · Databases

Why Concurrent Inserts Trigger MySQL Deadlocks: An In‑Depth InnoDB Lock Analysis

This article examines a MySQL 5.6 InnoDB deadlock scenario caused by concurrent batch INSERTs, detailing the table schema, test cases, lock acquisition phases, log analysis, lock compatibility matrix, and discusses why typical SQL‑level fixes are limited, suggesting index redesign or data sharding as mitigation.

InnoDBconcurrencydatabase
0 likes · 11 min read
Why Concurrent Inserts Trigger MySQL Deadlocks: An In‑Depth InnoDB Lock Analysis
Java Captain
Java Captain
Feb 27, 2019 · Fundamentals

Understanding Java volatile: Memory Visibility, Ordering, and Interview Insights

This article explains the Java volatile keyword, covering its memory‑visibility and ordering guarantees, how it interacts with the Java Memory Model, why it does not ensure atomicity, and demonstrates typical interview‑style examples and code snippets such as flag signaling and double‑checked locking.

Memory Modelatomicityconcurrency
0 likes · 16 min read
Understanding Java volatile: Memory Visibility, Ordering, and Interview Insights
Big Data Technology & Architecture
Big Data Technology & Architecture
Feb 21, 2019 · Backend Development

Essential Netty Knowledge and Source Code Analysis

This article introduces the "Big Data Path to God" series, lists several Java advanced topics, and provides a comprehensive Netty guide covering BIO/NIO/AIO differences, Netty features, threading model, TCP packet handling, serialization choices, zero‑copy, performance aspects, and key source‑code components.

NettyNetwork programmingconcurrency
0 likes · 3 min read
Essential Netty Knowledge and Source Code Analysis
Big Data Technology & Architecture
Big Data Technology & Architecture
Feb 16, 2019 · Fundamentals

Understanding LinkedBlockingQueue: Implementation, Principles, and Usage

This article provides a comprehensive overview of Java's LinkedBlockingQueue, covering its FIFO behavior, internal linked‑list structure, concurrency controls with separate put and take locks, detailed method implementations, and a multithreaded example demonstrating safe usage versus non‑thread‑safe alternatives.

BlockingQueueDataStructureThreadSafety
0 likes · 14 min read
Understanding LinkedBlockingQueue: Implementation, Principles, and Usage
Big Data Technology & Architecture
Big Data Technology & Architecture
Feb 16, 2019 · Backend Development

Understanding Java's ConcurrentLinkedQueue: Implementation, Principles, and Usage

This article explains the thread‑safe ConcurrentLinkedQueue in Java, covering its lock‑free linked‑list structure, core methods such as add, offer, and poll, detailed source‑code analysis, and a multithreaded example demonstrating its behavior in high‑concurrency scenarios.

ConcurrentLinkedQueueData Structureconcurrency
0 likes · 12 min read
Understanding Java's ConcurrentLinkedQueue: Implementation, Principles, and Usage
Big Data Technology & Architecture
Big Data Technology & Architecture
Feb 15, 2019 · Fundamentals

Understanding Java's ConcurrentSkipListMap: Overview, Principles, API, Source Analysis, and Example Usage

This article provides a comprehensive guide to Java's ConcurrentSkipListMap, covering its purpose as a thread‑safe ordered map, the underlying skip‑list data structure, a detailed list of its public methods, in‑depth source‑code analysis for add, remove, and get operations, and a multithreaded example demonstrating its correct behavior compared with TreeMap.

ConcurrentSkipListMapData StructureSkip List
0 likes · 20 min read
Understanding Java's ConcurrentSkipListMap: Overview, Principles, API, Source Analysis, and Example Usage
Big Data Technology & Architecture
Big Data Technology & Architecture
Feb 15, 2019 · Backend Development

Deep Dive into Java 8 ConcurrentHashMap: Initialization, Treeification, Resizing, and Transfer Mechanics

This article explains the inner workings of Java 8's ConcurrentHashMap, covering how the table is initialized, how linked‑list bins are converted to red‑black trees, the resizing logic with tryPresize, and the multi‑threaded transfer process that moves entries to a larger table.

ConcurrentHashMapData Structuresconcurrency
0 likes · 17 min read
Deep Dive into Java 8 ConcurrentHashMap: Initialization, Treeification, Resizing, and Transfer Mechanics
Big Data Technology & Architecture
Big Data Technology & Architecture
Feb 15, 2019 · Backend Development

Understanding CopyOnWriteArrayList: Introduction, Principles, API, and Source‑Code Analysis

This article introduces Java's CopyOnWriteArrayList, explains its dynamic‑array and thread‑safety mechanisms, lists the most important methods, provides detailed source‑code walkthroughs for constructors, add, get, remove and iterator implementations, and demonstrates its behavior with a multithreaded example compared to ArrayList.

CollectionsCopyOnWriteArrayListThreadSafety
0 likes · 14 min read
Understanding CopyOnWriteArrayList: Introduction, Principles, API, and Source‑Code Analysis
Big Data Technology & Architecture
Big Data Technology & Architecture
Feb 15, 2019 · Fundamentals

Deep Dive into Java HashMap and ConcurrentHashMap: Implementation, Operations, and Concurrency Mechanics

This article provides a comprehensive, step‑by‑step explanation of Java 7 HashMap and ConcurrentHashMap internals, covering their data structures, put/get algorithms, array initialization, resizing, segment locking, rehashing, and the concurrency considerations that ensure thread‑safe access.

ConcurrentHashMapData StructuresHashMap
0 likes · 22 min read
Deep Dive into Java HashMap and ConcurrentHashMap: Implementation, Operations, and Concurrency Mechanics
Meituan Technology Team
Meituan Technology Team
Feb 14, 2019 · Fundamentals

Understanding Java sun.misc.Unsafe: API, Usage, and Applications

The article explains Java’s sun.misc.Unsafe class, detailing how to safely obtain its singleton instance, describing its low‑level memory, CAS, thread, class, and object operations, and outlining common high‑performance use cases while warning about the significant risks of misuse.

Memory Managementconcurrencyjava
0 likes · 19 min read
Understanding Java sun.misc.Unsafe: API, Usage, and Applications
Big Data Technology & Architecture
Big Data Technology & Architecture
Feb 14, 2019 · Fundamentals

In‑Depth Analysis of Java HashMap Implementation and Usage

This article provides a comprehensive overview of Java's HashMap, covering its purpose as a key‑value store, the evolution of its internal data structures from JDK 1.7 to JDK 1.8, detailed explanations of core methods such as hash, put, get, resize, and practical example code illustrating common operations.

CollectionsData StructureHashMap
0 likes · 18 min read
In‑Depth Analysis of Java HashMap Implementation and Usage
Big Data Technology & Architecture
Big Data Technology & Architecture
Feb 14, 2019 · Backend Development

Java Multithreading: Concepts, Creation Methods, Lifecycle, and Termination Techniques

This article offers a thorough tutorial on Java multithreading, explaining processes versus threads, thread creation approaches, lifecycle states, priority handling, and various safe and unsafe ways to stop threads, complete with practical code examples and best‑practice warnings.

Thread LifecycleThread Terminationconcurrency
0 likes · 17 min read
Java Multithreading: Concepts, Creation Methods, Lifecycle, and Termination Techniques
Big Data Technology & Architecture
Big Data Technology & Architecture
Feb 14, 2019 · Fundamentals

Java Lock Types and Their Implementation Details

This article provides a comprehensive overview of various Java lock mechanisms—including fair, non‑fair, reentrant, read/write, biased, lightweight, heavyweight, and spin locks—explaining their classifications, usage, underlying AQS implementation, and includes illustrative code snippets for each type.

AQSLocksReadWriteLock
0 likes · 22 min read
Java Lock Types and Their Implementation Details
Big Data Technology & Architecture
Big Data Technology & Architecture
Feb 14, 2019 · Backend Development

Deep Dive into Java ArrayList: Implementation, Core Methods, and Usage Patterns

This article provides a comprehensive overview of Java's ArrayList, covering its internal structure, key fields, constructors, core operations such as adding, removing, and searching elements, traversal techniques, fail‑fast behavior, and a comparison with Vector, all illustrated with original source code snippets.

ArrayListCollectionsData Structures
0 likes · 18 min read
Deep Dive into Java ArrayList: Implementation, Core Methods, and Usage Patterns
Zhuanzhuan Tech
Zhuanzhuan Tech
Jan 17, 2019 · Backend Development

Design and Refactoring of the Book Outbound Service with SN Allocation and Concurrency Management

The article describes the challenges of handling book outbound operations—matching SN codes, ensuring data consistency, and avoiding lock contention—and outlines a comprehensive refactor that separates business logic, standardizes APIs, adopts asynchronous processing, and leverages Redis sets to achieve high‑performance, reliable SN allocation.

Backendconcurrencydistributed-systems
0 likes · 10 min read
Design and Refactoring of the Book Outbound Service with SN Allocation and Concurrency Management
Architect's Tech Stack
Architect's Tech Stack
Jan 17, 2019 · Backend Development

Comprehensive Java Interview Questions and Topics

This article compiles an extensive list of Java interview questions covering fundamentals, concurrency, collections, JVM internals, I/O, design patterns, testing, and best practices, providing candidates with a comprehensive study guide for modern backend development roles.

BackendDesign PatternsJVM
0 likes · 12 min read
Comprehensive Java Interview Questions and Topics
Programmer DD
Programmer DD
Dec 11, 2018 · Backend Development

Top 20 Java Interview Questions for Investment Banking (Answers Included)

This article compiles 20 common Java interview questions asked by investment banks, covering topics such as multithreaded HashMap usage, hashCode/equals contracts, String substring memory issues, singleton patterns, design patterns, deadlock avoidance, and performance considerations, each accompanied by concise answers and code examples.

BackendCollectionsDesign Patterns
0 likes · 18 min read
Top 20 Java Interview Questions for Investment Banking (Answers Included)
dbaplus Community
dbaplus Community
Dec 3, 2018 · Backend Development

Mastering Distributed Locks: DB, Redis, and Zookeeper Implementations Compared

This article examines the design and implementation of distributed locks using databases, Redis, and Zookeeper, outlining their core characteristics, practical code patterns, performance trade‑offs, fault‑tolerance mechanisms, and guidance on selecting the right solution for specific workloads.

DB lockRedis LockSystem Design
0 likes · 11 min read
Mastering Distributed Locks: DB, Redis, and Zookeeper Implementations Compared
MaGe Linux Operations
MaGe Linux Operations
Dec 2, 2018 · Backend Development

Master Python asyncio: From Coroutines to Event Loops Explained

This article introduces Python's asyncio library, explains how coroutines are defined and run, demonstrates event‑loop management with run_until_complete and run_forever, covers callbacks, gathering multiple coroutines, and best practices for closing loops, all illustrated with clear code screenshots.

asynchronous programmingasyncioconcurrency
0 likes · 7 min read
Master Python asyncio: From Coroutines to Event Loops Explained
Mike Chen's Internet Architecture
Mike Chen's Internet Architecture
Nov 20, 2018 · Backend Development

Comprehensive Java Multithreading and Concurrency Interview Questions and Answers

This article compiles 46 essential Java multithreading and concurrency interview questions with detailed answers, covering fundamentals such as atomicity, visibility, ordering, thread creation methods, thread pools, synchronization mechanisms, lock types, AQS, deadlocks, and performance considerations for high‑performance backend development.

SynchronizationThreadPoolconcurrency
0 likes · 24 min read
Comprehensive Java Multithreading and Concurrency Interview Questions and Answers
MaGe Linux Operations
MaGe Linux Operations
Nov 17, 2018 · Fundamentals

Master Python Multithreading: Processes, GIL, and Threading Modules Explained

This article explains the fundamentals of Python concurrency, covering the differences between processes and threads, the role of the Global Interpreter Lock (GIL), how to use the low‑level thread module and the high‑level threading module, synchronization primitives such as Lock, RLock, Event, Condition, and the Queue module for producer‑consumer patterns.

GILconcurrencymultithreading
0 likes · 19 min read
Master Python Multithreading: Processes, GIL, and Threading Modules Explained
Ctrip Technology
Ctrip Technology
Nov 15, 2018 · Mobile Development

Optimizing Startup Process for Platform-Scale Mobile Apps: The Rocket Framework at Trip.com

This article shares Trip.com’s experience in redesigning the mobile app launch process through componentization, concurrent initialization, visual monitoring, and automated experiments, culminating in the Rocket framework that reduced startup time by over 40% while keeping modules isolated and crash‑resilient.

Rocket frameworkTrip.comapp startup
0 likes · 12 min read
Optimizing Startup Process for Platform-Scale Mobile Apps: The Rocket Framework at Trip.com
Meituan Technology Team
Meituan Technology Team
Nov 15, 2018 · Backend Development

Understanding Java Locks: Optimistic, Pessimistic, CAS, and Various Lock Types

The article explains Java’s various lock mechanisms—including optimistic vs. pessimistic, spin and adaptive spin, no‑lock through heavyweight states, fair vs. unfair, reentrant vs. non‑reentrant, and exclusive vs. shared locks—using JDK 8 source code and practical examples to guide developers in choosing the appropriate lock for different concurrency scenarios.

CASLocksReadWriteLock
0 likes · 26 min read
Understanding Java Locks: Optimistic, Pessimistic, CAS, and Various Lock Types
Mike Chen's Internet Architecture
Mike Chen's Internet Architecture
Nov 14, 2018 · Fundamentals

Implementation Principles of ConcurrentHashMap (CurrentHashMap) in JDK 1.7 and JDK 1.8

This article explains the underlying principles of hash tables, compares HashMap, Hashtable and ConcurrentHashMap, and details the architectural differences of ConcurrentHashMap in JDK 1.7 (segment‑based locking) versus JDK 1.8 (array‑list‑tree with CAS), including code examples and performance trade‑offs.

ConcurrentHashMapHashMapJDK1.7
0 likes · 8 min read
Implementation Principles of ConcurrentHashMap (CurrentHashMap) in JDK 1.7 and JDK 1.8
Programmer DD
Programmer DD
Nov 12, 2018 · Backend Development

Why Did My Java ThreadPool Hang? Uncovering a Hidden HashSet Loop in JDK 1.7

A production Java service suffered a thread‑pool alarm due to an unbounded LinkedBlockingQueue and a non‑thread‑safe HashSet, leading to massive memory usage, a circular linked‑list loop in HashMap, and severe CPU load, which was resolved by switching to ConcurrentHashMap and tuning the pool.

MemoryAnalysisThreadPoolconcurrency
0 likes · 8 min read
Why Did My Java ThreadPool Hang? Uncovering a Hidden HashSet Loop in JDK 1.7
Beike Product & Technology
Beike Product & Technology
Nov 9, 2018 · Backend Development

Why Go Is Fast: 5 Key Language Features Explained

This article translates David Cheney's 2014 Gocon talk, detailing five Go language features—efficient value handling, inlining, escape analysis, goroutine scheduling, and dynamic stack management—that together explain Go's performance advantages, memory usage, and concurrency model.

Escape AnalysisGoGoroutine
0 likes · 15 min read
Why Go Is Fast: 5 Key Language Features Explained
Programmer DD
Programmer DD
Nov 9, 2018 · Backend Development

How Java’s Producer‑Consumer Problem Evolved: From Classic Locks to BlockingQueue and Thread Pools

This article walks through the classic Java producer‑consumer synchronization challenge, shows its traditional lock‑based solution, then demonstrates modern approaches using BlockingQueue and ExecutorService thread pools to simplify code, improve reliability, and avoid common pitfalls like deadlocks and thread starvation.

BlockingQueueProducer ConsumerThreadPool
0 likes · 15 min read
How Java’s Producer‑Consumer Problem Evolved: From Classic Locks to BlockingQueue and Thread Pools
Java Captain
Java Captain
Nov 3, 2018 · Fundamentals

Differences Between synchronized and Lock in Java and Their Usage

This article explains the fundamental differences between Java's synchronized keyword and the Lock interface, covering thread basics, lock types, a detailed comparison table, and practical code demos that illustrate how to acquire, try, and release locks in various scenarios.

Lockconcurrencyjava-lock
0 likes · 14 min read
Differences Between synchronized and Lock in Java and Their Usage
Hujiang Technology
Hujiang Technology
Oct 29, 2018 · Backend Development

Implementing a Custom Java AQS Lock from Scratch

This tutorial walks through building a simple Java lock using AbstractQueuedSynchronizer (AQS), starting with a basic MyLock class, adding thread parking with Unsafe, creating a FIFO thread container, and refining lock and unlock methods to achieve correct synchronization and avoid lock starvation.

AQSLockconcurrency
0 likes · 15 min read
Implementing a Custom Java AQS Lock from Scratch
UCloud Tech
UCloud Tech
Oct 25, 2018 · Backend Development

Why Go 1.8’s ForkLock Can Hang Goroutines and How Go 1.9 Solves It

The article investigates a Go 1.8.3 issue where goroutines block on ForkLock during fork‑exec, analyzes the kernel and Go runtime behavior, presents a hypothesis about memory‑heavy processes, validates it with experiments, and shows that upgrading to Go 1.9 or later eliminates the problem.

GoGoroutineconcurrency
0 likes · 7 min read
Why Go 1.8’s ForkLock Can Hang Goroutines and How Go 1.9 Solves It
Mike Chen's Internet Architecture
Mike Chen's Internet Architecture
Oct 25, 2018 · Backend Development

Ant Financial (蚂蚁金服) Java Backend and Middleware Interview Questions

This article compiles a comprehensive set of Ant Financial interview questions covering Java fundamentals, data structures, concurrency, JVM internals, Spring framework, Tomcat, Docker, Dubbo, MySQL sharding, and messaging middleware, providing candidates with a detailed study guide for multiple interview rounds.

BackendDockerconcurrency
0 likes · 4 min read
Ant Financial (蚂蚁金服) Java Backend and Middleware Interview Questions
Full-Stack Internet Architecture
Full-Stack Internet Architecture
Oct 17, 2018 · Backend Development

Understanding CopyOnWriteArrayList in Java: Implementation, Principles, and Comparison with ArrayList

CopyOnWriteArrayList is a thread‑safe variant of ArrayList that achieves read‑write separation by copying the underlying array on each mutative operation, using a ReentrantLock for writes, making it ideal for read‑heavy, write‑light scenarios, and it differs from ArrayList in safety, performance, and concurrency behavior.

CopyOnWriteArrayListData Structuresconcurrency
0 likes · 5 min read
Understanding CopyOnWriteArrayList in Java: Implementation, Principles, and Comparison with ArrayList
Programmer DD
Programmer DD
Oct 16, 2018 · Backend Development

Deep Dive into ThreadPoolExecutor: Uncover How Java Manages Thread Pools

This article provides a comprehensive analysis of Java's ThreadPoolExecutor source code, covering class relationships, core interfaces, abstract implementations, internal fields, constructors, the Worker class, and detailed walkthroughs of key methods such as execute, addWorker, runWorker, getTask, processWorkerExit, tryTerminate, and idle thread interruption, plus monitoring techniques.

ExecutorServiceThreadPoolExecutorbackend-development
0 likes · 19 min read
Deep Dive into ThreadPoolExecutor: Uncover How Java Manages Thread Pools
Mike Chen's Internet Architecture
Mike Chen's Internet Architecture
Sep 30, 2018 · Backend Development

BAT Technical Interview Topics and Experience Summary

This guide outlines the key technical interview areas for BAT companies—including algorithms, Java fundamentals and advanced topics, frameworks, concurrency, networking, databases, and architecture—provides example questions with visual references, and shares practical interview and project experience tips to help candidates succeed.

architecturebatconcurrency
0 likes · 4 min read
BAT Technical Interview Topics and Experience Summary
UC Tech Team
UC Tech Team
Sep 25, 2018 · Frontend Development

Understanding JavaScript Event Loop: Theory and Practice

This article explains the JavaScript Event Loop mechanism in depth, covering the call stack, heap memory, macro‑ and micro‑tasks, and their queues, and demonstrates the execution order through detailed examples and step‑by‑step visualizations of multiple event‑loop cycles.

AsyncJavaScriptNode.js
0 likes · 7 min read
Understanding JavaScript Event Loop: Theory and Practice
Java Captain
Java Captain
Sep 20, 2018 · Backend Development

Common Cache Problems and Their Mitigation Strategies

The article explains major cache issues such as consistency, concurrency, penetration, jitter, avalanche, and the “bottomless pit” phenomenon, and outlines practical techniques like locking, empty‑object caching, request filtering, consistent hashing, rate limiting, and multi‑level caching to prevent system failures.

Consistencycache-avalanchecache-penetration
0 likes · 8 min read
Common Cache Problems and Their Mitigation Strategies
Programmer DD
Programmer DD
Aug 17, 2018 · Fundamentals

How LinkedTransferQueue Works: The Smart Lock‑Free Queue Behind Java Concurrency

LinkedTransferQueue, introduced in JDK 7, combines the capacity of traditional BlockingQueues with the lock‑free behavior of SynchronousQueue, using a sophisticated node‑based algorithm that matches producers and consumers without locking the whole queue, offering high‑performance concurrent data transfer.

BlockingQueueLinkedTransferQueueconcurrency
0 likes · 16 min read
How LinkedTransferQueue Works: The Smart Lock‑Free Queue Behind Java Concurrency
Meitu Technology
Meitu Technology
Aug 15, 2018 · Backend Development

Design and Performance Analysis of the Zap Logging Library in Go

The article examines Uber’s high‑throughput Go logging library zap, detailing its structured‑logging design, separation of concerns, copy‑on‑write filtering, extensive sync.Pool object reuse, reflection‑free type‑specific encoding, dynamic HTTP level control, and supplemental features such as a sugar API and log‑rotation, which together deliver superior performance over traditional libraries.

GoZAPconcurrency
0 likes · 18 min read
Design and Performance Analysis of the Zap Logging Library in Go
Programmer DD
Programmer DD
Aug 13, 2018 · Backend Development

Deep Dive into Java’s SynchronousQueue: How It Works and Its Implementation

This article provides a comprehensive analysis of Java's SynchronousQueue, detailing its unique zero-capacity behavior, differences from other BlockingQueue implementations, internal structures such as TransferQueue and TransferStack, fair and non‑fair modes, and the core transfer algorithm with code examples.

BlockingQueueFairnessSynchronousQueue
0 likes · 19 min read
Deep Dive into Java’s SynchronousQueue: How It Works and Its Implementation
Architect's Tech Stack
Architect's Tech Stack
Aug 12, 2018 · Backend Development

Understanding and Analyzing the Implementation of Java's Semaphore

This article explains the internal workings of Java's Semaphore, detailing its AQS-based architecture, fair and non‑fair synchronization strategies, core methods such as acquire, release, and their implementations, and provides a practical example demonstrating semaphore usage for thread coordination.

AQSSynchronizationThread Coordination
0 likes · 12 min read
Understanding and Analyzing the Implementation of Java's Semaphore
ITFLY8 Architecture Home
ITFLY8 Architecture Home
Aug 11, 2018 · Fundamentals

Explore Java Core Concepts: JVM GC, Concurrency, and Collection Diagrams

This article presents a collection of visual diagrams that map key Java fundamentals, including a JVM garbage‑collection overview, Java concurrency structures, comprehensive collection maps, and detailed class diagrams for List, Map, and Set, offering developers clear reference graphics for understanding core Java APIs.

Class DiagramCollectionsJVM
0 likes · 1 min read
Explore Java Core Concepts: JVM GC, Concurrency, and Collection Diagrams
Programmer DD
Programmer DD
Aug 10, 2018 · Fundamentals

Mastering Java’s DelayQueue: How It Works and When to Use It

This article explains Java's DelayQueue—a blocking queue that releases elements only after their delay expires—covering its primary use cases, core components like ReentrantLock, Condition, and PriorityQueue, the Delayed interface, internal structure, and detailed implementations of the offer() and take() methods, including a discussion of potential memory‑leak pitfalls.

BlockingQueueDelayQueueDelayed Interface
0 likes · 7 min read
Mastering Java’s DelayQueue: How It Works and When to Use It
Architect's Tech Stack
Architect's Tech Stack
Aug 8, 2018 · Backend Development

Deep Dive into Java AQS Shared‑Lock Implementation

This article explains the execution flow, source‑code details, and wake‑up logic of Java's AbstractQueuedSynchronizer shared‑lock mode, covering acquireShared, doAcquireShared, setHeadAndPropagate, doReleaseShared, and releaseShared methods with full code snippets and practical guidance.

AQSSharedLockSynchronization
0 likes · 11 min read
Deep Dive into Java AQS Shared‑Lock Implementation
Programmer DD
Programmer DD
Aug 8, 2018 · Fundamentals

Unlocking Java’s PriorityBlockingQueue: How Binary Heap Powers Priority Queues

This article explains how Java’s PriorityBlockingQueue implements a priority‑based unbounded blocking queue using a binary heap, covering heap structure, insertion and removal algorithms, underlying ReentrantLock synchronization, and key source code snippets that illustrate the sift‑up, sift‑down, and growth mechanisms.

BinaryHeapDataStructurePriorityBlockingQueue
0 likes · 16 min read
Unlocking Java’s PriorityBlockingQueue: How Binary Heap Powers Priority Queues
Beike Product & Technology
Beike Product & Technology
Aug 3, 2018 · Backend Development

Common Go Language Pitfalls and Best Practices

This article explains frequent pitfalls in Go programming—including file‑naming conventions, defer execution order, panic value handling, for‑range copying, struct composition, init function behavior, pointer operations, command‑line arguments, slice capacity bugs, map usage, and channel communication—while providing clear examples and recommended fixes.

GoPitfallsbest practices
0 likes · 16 min read
Common Go Language Pitfalls and Best Practices
Beike Product & Technology
Beike Product & Technology
Aug 3, 2018 · Fundamentals

Understanding Java HashMap Optimizations in JDK 1.8

This article explains the fundamental principles of Java's HashMap, covering hash basics, time‑complexity of operations, the role of load factor and initial capacity, the resize algorithm without full rehashing, and the treeification of long buckets, illustrated with JDK 1.8 source code examples.

Data StructuresHashMapJDK8
0 likes · 16 min read
Understanding Java HashMap Optimizations in JDK 1.8
Senior Brother's Insights
Senior Brother's Insights
Jul 23, 2018 · Fundamentals

HashMap vs ConcurrentHashMap: Deep Dive into JDK 1.7 and 1.8 Implementations

This article explains the internal structures of HashMap and ConcurrentHashMap in Java, compares their JDK 1.7 and JDK 1.8 implementations, walks through the put and get algorithms with code examples, highlights performance optimizations such as treeification, and shows why ConcurrentHashMap is needed for thread‑safe access.

ConcurrentHashMapHashMapconcurrency
0 likes · 21 min read
HashMap vs ConcurrentHashMap: Deep Dive into JDK 1.7 and 1.8 Implementations
Programmer DD
Programmer DD
Jul 23, 2018 · Fundamentals

How Does Java’s ArrayBlockingQueue Work Under the Hood?

This article explains the internal design of Java’s ArrayBlockingQueue—a fixed‑size, FIFO blocking queue that uses a ReentrantLock and Condition objects to coordinate producers and consumers, detailing its fields, fairness option, and the concrete implementations of add, offer, poll, and take methods.

ArrayBlockingQueueBlockingQueueReentrantLock
0 likes · 10 min read
How Does Java’s ArrayBlockingQueue Work Under the Hood?
Programmer DD
Programmer DD
Jul 10, 2018 · Backend Development

How Guava Cache Works Under the Hood: Expiration, LRU, and Implementation Details

This article explains the design and inner workings of Google Guava's Cache library, covering JVM‑level caching, the advantages over simple maps, a real‑world Kafka alerting scenario, code examples, expiration policies, LRU handling, concurrency mechanisms, and the builder pattern used to configure caches.

ExpirationGuavaLRU
0 likes · 10 min read
How Guava Cache Works Under the Hood: Expiration, LRU, and Implementation Details
Qunar Tech Salon
Qunar Tech Salon
Jul 4, 2018 · Backend Development

Performance Optimization of Qunar's ATPCO International Ticket Pricing System

This article details how Qunar's ATPCO international fare system was analyzed and optimized through performance profiling, application of Little's Law and Amdahl's Law, code refactoring, cache replacement, pruning of search space, and concurrency improvements such as ForkJoinPool to dramatically reduce response times and CPU pressure.

Amdahl's LawBackendLittle's Law
0 likes · 12 min read
Performance Optimization of Qunar's ATPCO International Ticket Pricing System
Programmer DD
Programmer DD
Jul 1, 2018 · Backend Development

Mastering Java’s CyclicBarrier: How Threads Synchronize and What Can Go Wrong

This article explains Java’s CyclicBarrier synchronization aid, detailing its purpose, constructors, the await() workflow, internal implementation with ReentrantLock and Condition, generation handling, error scenarios, timeout support, and provides a complete multithreaded example illustrating its practical use.

CyclicBarrierconcurrencyjava
0 likes · 10 min read
Mastering Java’s CyclicBarrier: How Threads Synchronize and What Can Go Wrong
Full-Stack Internet Architecture
Full-Stack Internet Architecture
Jun 30, 2018 · Fundamentals

Fundamentals of the Java Memory Model and Concurrency

This article explains the core concepts of the Java Memory Model, including atomicity, visibility, ordering, instruction reordering, sequential consistency, volatile semantics, lock mechanisms, happens‑before rules, and double‑checked locking for lazy initialization.

Happens-beforeMemory ModelReordering
0 likes · 11 min read
Fundamentals of the Java Memory Model and Concurrency
Programmer DD
Programmer DD
Jun 28, 2018 · Backend Development

Inside Alibaba’s Multi‑Round Java Interview: Real Questions & Lessons Learned

The author recounts a four‑month journey through three Alibaba departments, detailing each technical and HR interview round, the specific Java‑focused questions asked, the on‑the‑spot coding test, and practical takeaways for candidates preparing for large‑scale backend interview processes.

BackendTechnicalInterviewcareer
0 likes · 15 min read
Inside Alibaba’s Multi‑Round Java Interview: Real Questions & Lessons Learned
JD Tech
JD Tech
Jun 28, 2018 · Backend Development

Asynchronous Programming and Promise Patterns in Backend Systems

This article introduces the concepts of synchronous versus asynchronous calls, explains the challenges of RPC services in large-scale systems, and provides detailed guidance on using polling, callbacks, futures, and CompletableFuture in Java to implement efficient, non‑blocking backend architectures with practical code examples.

BackendFuturePromise
0 likes · 18 min read
Asynchronous Programming and Promise Patterns in Backend Systems