All Articles

140385 articles · Page 6983 of 7020
Qunar Tech Salon
Qunar Tech Salon
Apr 6, 2015 · Fundamentals

How to Write Java Code That Causes a Memory Leak

Various techniques for deliberately creating memory leaks in Java are presented, including using long‑running threads with custom class loaders, static references, ThreadLocal misuse, improper handling of resources like connections and streams, and flawed implementations of hashCode/equals, each illustrated with code examples.

JavaStatic ReferenceThreadLocal
0 likes · 6 min read
How to Write Java Code That Causes a Memory Leak

Non‑Intrusive High‑Performance Complex Query Engine for HBase Using Secondary Multi‑Column Indexes

This article presents a non‑intrusive, high‑performance engine that adds secondary multi‑column indexes to Apache HBase, enabling efficient complex condition queries while preserving HBase's scalability, and details its principles, architecture, query API, index configuration, and practical trade‑offs.

CoprocessorHBaseNoSQL
0 likes · 18 min read
Non‑Intrusive High‑Performance Complex Query Engine for HBase Using Secondary Multi‑Column Indexes
Qunar Tech Salon
Qunar Tech Salon
Apr 5, 2015 · Backend Development

Implementing Java Event Notification with the Observer Pattern: Common Pitfalls and Thread‑Safe Solutions

This article explains how to build a Java event‑notification system using the observer pattern, highlights typical mistakes such as concurrent modification and deadlocks, and presents several thread‑safe implementations ranging from synchronized blocks to CopyOnWriteArraySet and atomic primitives.

Synchronizationconcurrencyevent notification
0 likes · 10 min read
Implementing Java Event Notification with the Observer Pattern: Common Pitfalls and Thread‑Safe Solutions
Qunar Tech Salon
Qunar Tech Salon
Apr 4, 2015 · Fundamentals

Greedy Algorithm: Concepts, Basic Approach, Applicability, and Example Analysis

This article explains the fundamental concepts of greedy algorithms, outlines their basic design steps, discusses the conditions under which they yield optimal solutions, presents an implementation framework, and analyzes a knapsack problem example that illustrates common greedy strategies and their limitations.

algorithm analysisgreedy algorithmknapsack problem
0 likes · 6 min read
Greedy Algorithm: Concepts, Basic Approach, Applicability, and Example Analysis
Art of Distributed System Architecture Design
Art of Distributed System Architecture Design
Apr 4, 2015 · Backend Development

Zhihu's Early Architecture and Evolution: Backend Development, Distributed Logging, Event‑Driven Design, and Service‑Oriented Architecture

The article chronicles Zhihu's growth from a two‑engineer startup using Python and Tornado on a single Linode server to a large‑scale backend employing high‑availability MySQL, Redis sharding, a custom distributed logging system (Kids), event‑driven processing with Sink and Beanstalkd, component‑based page rendering via ZhihuNode, and a multi‑layer SOA built on evolving RPC frameworks.

Backend EngineeringPythondistributed logging
0 likes · 10 min read
Zhihu's Early Architecture and Evolution: Backend Development, Distributed Logging, Event‑Driven Design, and Service‑Oriented Architecture
Qunar Tech Salon
Qunar Tech Salon
Apr 3, 2015 · Fundamentals

Python Performance Optimization: Alternatives and Techniques

This article examines why Python’s execution speed can lag behind compiled languages and presents five practical approaches—using alternative runtimes like PyPy, JIT‑based implementations such as Pyston, compilation tools like Nuitka, C extensions via Cython, and JIT acceleration with Numba—to improve Python performance.

Alternative ImplementationsJITPython
0 likes · 6 min read
Python Performance Optimization: Alternatives and Techniques
MaGe Linux Operations
MaGe Linux Operations
Apr 3, 2015 · Operations

Master Linux Kernel Compilation: A Step‑by‑Step Guide

This guide walks you through obtaining the Linux kernel source, extracting it, configuring options with menuconfig, compiling with make, installing modules and the kernel, updating bootloader entries, and cleaning up, providing practical commands and tips for a successful custom kernel build.

Compilationkernelmake
0 likes · 8 min read
Master Linux Kernel Compilation: A Step‑by‑Step Guide
MaGe Linux Operations
MaGe Linux Operations
Apr 2, 2015 · Fundamentals

Boost Python Speed: 5 Proven Techniques and Alternative Runtimes

This article explores why Python’s execution speed lags behind compiled languages, presents two main optimization strategies, and details five practical approaches—including PyPy, Pyston, Nuitka, Cython, and Numba—to significantly improve Python performance on the same hardware.

CythonNuitkaPyPy
0 likes · 7 min read
Boost Python Speed: 5 Proven Techniques and Alternative Runtimes

Designing a High‑Availability, Auto‑Scaling KV Storage System Based on Memcached and Redis

This article examines common NoSQL key‑value stores such as Memcached and Redis, compares their strengths and limitations, and proposes a distributed architecture with routing, storage, management, and migration nodes that achieves high availability, automatic fault‑tolerance, load balancing, and elastic scaling.

Elastic ScalingHigh AvailabilityKV store
0 likes · 15 min read
Designing a High‑Availability, Auto‑Scaling KV Storage System Based on Memcached and Redis
MaGe Linux Operations
MaGe Linux Operations
Apr 1, 2015 · Databases

Master MySQL Slow Query Log: Enable, Analyze, and Choose the Best Tools

This guide explains how to enable MySQL's slow query log, configure it in my.cnf, and compares five popular analysis tools—mysqldumpslow, mysqlsla, mysql-explain-slow-log, mysql-log-filter, and myprofi—detailing their features, output formats, and advantages to help you select the most suitable solution.

Database ToolsSlow Query Logmysql
0 likes · 5 min read
Master MySQL Slow Query Log: Enable, Analyze, and Choose the Best Tools
Meituan Technology Team
Meituan Technology Team
Apr 1, 2015 · Cloud Native

Understanding Linux cgroups: Concepts, Hierarchy, and Usage

Linux cgroups are a kernel feature that organizes processes into hierarchical control groups, allowing fine‑grained limits, accounting, and isolation of CPU, memory, I/O, network and devices via subsystems such as cpu, memory, cpuset, blkio, and others, and are accessed through a virtual filesystem for configuring and managing resource constraints, underpinning containers and cloud platforms.

Cloud NativeContainersLinux kernel
0 likes · 15 min read
Understanding Linux cgroups: Concepts, Hierarchy, and Usage
Art of Distributed System Architecture Design
Art of Distributed System Architecture Design
Apr 1, 2015 · Backend Development

Design Goals, Challenges, and Evolution of Large-Scale Website Architecture

This article examines the objectives, challenges, evolutionary technologies, design principles, and practical strategies such as resource separation, caching, load balancing, database read/write splitting, CDN, distributed storage, and consistency models that are essential for building and scaling large‑scale website architectures.

Cachingdistributed systemsload balancing
0 likes · 10 min read
Design Goals, Challenges, and Evolution of Large-Scale Website Architecture