Tagged articles

Go

1930 articles · Page 12 of 20
Nullbody Notes
Nullbody Notes
Dec 30, 2023 · Backend Development

Building a Simple In-Memory Redis Clone with Go

This article walks through the third part of an eleven‑article series that implements a functional Redis‑compatible in‑memory database in Go, detailing how the PING, AUTH, SELECT, SET and GET commands are parsed, routed and executed with concrete code examples.

Data StructuresGoIn-Memory Database
0 likes · 12 min read
Building a Simple In-Memory Redis Clone with Go
System Architect Go
System Architect Go
Dec 26, 2023 · Cloud Native

Distributed Leader Election and Kubernetes Lease

Distributed leader election ensures a single node performs exclusive tasks in high‑availability systems, with common implementations like Etcd, Kafka, Elasticsearch, and Zookeeper using algorithms such as Paxos, Raft, and ZAB, while Kubernetes provides the Lease resource to manage leader election via a distributed lock.

GoPaxosdistributed systems
0 likes · 7 min read
Distributed Leader Election and Kubernetes Lease
政采云技术
政采云技术
Dec 19, 2023 · Backend Development

Principles and Simple Implementation of a Search Engine in Go

This article explains the fundamental concepts of search engine technology—including forward and inverted indexes, tokenizers, stop words, synonym handling, ranking algorithms, and NLP integration—and provides a concise Go implementation with code examples and performance testing.

GoNLPRanking
0 likes · 21 min read
Principles and Simple Implementation of a Search Engine in Go
Nullbody Notes
Nullbody Notes
Dec 18, 2023 · Backend Development

How to Build a Deep Copy Utility in Go Using reflect

This article walks through implementing a deep‑copy function in Go with the reflect package, explaining key concepts such as reflect.ValueOf, reflect.New, pointer handling, and recursive copying, and provides a complete code example and visual diagrams.

GoRuntimedeep copy
0 likes · 4 min read
How to Build a Deep Copy Utility in Go Using reflect
Nullbody Notes
Nullbody Notes
Dec 17, 2023 · Backend Development

Build Your Own Go ORM: Logger, Struct Mapping, CRUD, Transactions & Hooks

This tutorial walks through creating a lightweight Go ORM—covering a custom logger, converting structs to table metadata, implementing basic CRUD operations, handling transactions, and adding hook callbacks—while exposing the core Session data structure and providing a GitHub reference.

DatabaseGORMGo
0 likes · 7 min read
Build Your Own Go ORM: Logger, Struct Mapping, CRUD, Transactions & Hooks
Baidu Geek Talk
Baidu Geek Talk
Dec 13, 2023 · Backend Development

How Baidu Revamped Its Search Display Service: From PHP to Go and Graph Engines

This article details Baidu's search display service evolution, outlining its original C and PHP/HHVM implementation, the three major challenges of high development difficulty, limited architecture capability, and low reusability, and presents a comprehensive solution using a graph execution engine, common operators, and a phased migration to Go.

GoGraph engineService Migration
0 likes · 15 min read
How Baidu Revamped Its Search Display Service: From PHP to Go and Graph Engines
Nullbody Notes
Nullbody Notes
Dec 12, 2023 · Backend Development

Build a High‑Performance Go Cache Library (EasyCache) from Scratch

This article walks through implementing EasyCache, a Go‑based in‑memory cache with sharding, lock‑free concurrency, LRU eviction, and configurable expiration, explaining the underlying data structures, goroutine cleanup logic, and key handling with concrete code examples.

GoLRUSharding
0 likes · 9 min read
Build a High‑Performance Go Cache Library (EasyCache) from Scratch
Tencent Cloud Developer
Tencent Cloud Developer
Dec 12, 2023 · Fundamentals

Understanding Go Function Pointers and Their Performance Impact

The article explains how Go’s function values introduce an extra indirection and trigger escape analysis, making indirect calls slower than C pointers, and offers optimization tactics such as avoiding function‑pointer calls, using switch‑based dispatch, or applying the unsafe noescape trick when safe.

CompilerEscape AnalysisGo
0 likes · 15 min read
Understanding Go Function Pointers and Their Performance Impact
ITPUB
ITPUB
Dec 11, 2023 · Backend Development

Go vs Rust in 2024: Which Language Should Power Your Projects?

This article compares Go and Rust across performance, concurrency, memory safety, development speed, and developer experience, highlighting each language's strengths and weaknesses to help developers decide which language best fits their specific project requirements in 2024.

GoLanguage comparisonRust
0 likes · 12 min read
Go vs Rust in 2024: Which Language Should Power Your Projects?
Nullbody Notes
Nullbody Notes
Dec 9, 2023 · Backend Development

Designing Load Balancing and Keep‑Alive Strategies in Go

This article walks through implementing three load‑balancing algorithms (random, round‑robin, weighted round‑robin) in Go, explains the weighted selection math with step‑by‑step examples, and presents two service‑liveness solutions—heartbeat via Docker/Kafka and HTTP health checks—complete with code snippets and deployment commands.

DockerGoKafka
0 likes · 9 min read
Designing Load Balancing and Keep‑Alive Strategies in Go
Nullbody Notes
Nullbody Notes
Dec 9, 2023 · Databases

How to Build a Crash‑Safe KV Store Engine in Go

This article walks through building a simple yet enterprise‑grade key‑value storage engine in Go, covering WAL implementation, LSM‑Tree structure, SkipList‑based in‑memory storage, transaction handling for Put/Get/Delete, and the on‑disk log format, with a complete 1,000‑line codebase hosted on GitHub.

GoKV storeLSM Tree
0 likes · 6 min read
How to Build a Crash‑Safe KV Store Engine in Go
dbaplus Community
dbaplus Community
Dec 7, 2023 · Backend Development

How to Merge Go Microservices into a Single Pod and Cut CPU Usage by 60%

This article explains how the team transformed a Go‑based microservice recommendation system into a single‑pod monolithic application using tRPC‑Go, detailing performance bottlenecks, code‑level mock‑proxy techniques, deployment adjustments, and the resulting dramatic reduction in CPU consumption.

GoMicroservicesbackend
0 likes · 13 min read
How to Merge Go Microservices into a Single Pod and Cut CPU Usage by 60%
Senior Brother's Insights
Senior Brother's Insights
Dec 3, 2023 · Fundamentals

Mastering Go's Switch: Advanced Patterns and Common Pitfalls

This guide explores Go's versatile switch statement, covering basic syntax, initializer and value parts, literal true switches, short assignments, multiple case values, fallthrough behavior, default placement nuances, and type switches, all illustrated with clear code examples.

GoSwitchTutorial
0 likes · 9 min read
Mastering Go's Switch: Advanced Patterns and Common Pitfalls
Senior Brother's Insights
Senior Brother's Insights
Dec 3, 2023 · Backend Development

Rust vs Go in 2024: Which Language Wins Your Next Project?

This article compares Rust and Go across performance, concurrency, memory safety, development speed, and developer experience, highlighting each language's strengths and weaknesses to help developers choose the most suitable language for their 2024 projects.

GoLanguage comparisonRust
0 likes · 13 min read
Rust vs Go in 2024: Which Language Wins Your Next Project?
ITPUB
ITPUB
Dec 1, 2023 · Backend Development

Turning tRPC‑Go Microservices into a High‑Performance Monolith

This article explains how a large‑scale recommendation system built with tRPC‑Go microservices was refactored into a single‑process monolith to cut network overhead, reduce CPU usage by over 60%, and retain the benefits of microservice development while minimizing code changes.

GoMicroservicesmonolith
0 likes · 14 min read
Turning tRPC‑Go Microservices into a High‑Performance Monolith
LouZai
LouZai
Dec 1, 2023 · Backend Development

Understanding All Major Distributed Lock Implementations in One Guide

This article explains what distributed locks are, outlines their key properties, classifies implementation approaches, and provides detailed walkthroughs of MySQL, Redis, Etcd, and ZooKeeper based locks—including code examples, trade‑offs, and best‑practice recommendations.

GoMySQLRedis
0 likes · 21 min read
Understanding All Major Distributed Lock Implementations in One Guide
MaGe Linux Operations
MaGe Linux Operations
Nov 27, 2023 · Fundamentals

Mastering Go Structs: From Definition to Advanced Embedding

This comprehensive guide walks you through Go structs—covering their definition, instantiation, methods, receivers, anonymous fields, embedding, and method expressions—while providing clear code examples and practical guidelines for effective use in Go programming.

EmbeddingGoStruct
0 likes · 9 min read
Mastering Go Structs: From Definition to Advanced Embedding
Nullbody Notes
Nullbody Notes
Nov 27, 2023 · Backend Development

Build a Simple Go RPC Framework – A Beginner-Friendly Project

This article walks Go beginners through designing and implementing a lightweight RPC framework called easyrpc, covering protocol design, message serialization, network communication, graceful server shutdown, client stub generation with reflect.MakeFunc, and concurrent request handling, with full source code on GitHub.

Code ExampleGoRPC
0 likes · 16 min read
Build a Simple Go RPC Framework – A Beginner-Friendly Project
Nullbody Notes
Nullbody Notes
Nov 26, 2023 · Fundamentals

Binary Tree Right Side View Using Level‑Order Traversal in Go

The article explains how to obtain the rightmost node values at each depth of a binary tree by performing a level‑order (BFS) traversal, and provides a complete Go implementation that records the last node of every level as the right‑side view.

AlgorithmBFSGo
0 likes · 4 min read
Binary Tree Right Side View Using Level‑Order Traversal in Go
Bilibili Tech
Bilibili Tech
Nov 24, 2023 · Cloud Native

Chaos Engineering and Fault Injection Practices at Bilibili: Architecture, Implementation, and Automation

Bilibili built a middleware‑based chaos engineering platform that injects faults into Golang microservices via AOP, supporting server‑ and client‑side, database, cache, and queue components, with fine‑grained instance, request, target, and user controls, automated dependency collection, experiment orchestration, and CI integration to boost system reliability.

Chaos EngineeringGoMicroservices
0 likes · 18 min read
Chaos Engineering and Fault Injection Practices at Bilibili: Architecture, Implementation, and Automation
Nullbody Notes
Nullbody Notes
Nov 24, 2023 · Fundamentals

How to Solve the Coin Change Problem Using Dynamic Programming

This article explains the classic coin change problem, models it as a minimum‑coin DP task, derives the recurrence relation, shows how to initialize the DP array with a large sentinel value, and provides a complete Go implementation that returns the optimal count or -1 when impossible.

AlgorithmDP recurrenceGo
0 likes · 5 min read
How to Solve the Coin Change Problem Using Dynamic Programming
Nullbody Notes
Nullbody Notes
Nov 23, 2023 · Fundamentals

How to Merge Overlapping Intervals in Go

This article explains how to merge overlapping intervals in Go by first sorting them by their start points and then iteratively combining adjacent intervals, with a complete code example and step‑by‑step reasoning.

AlgorithmGointervals
0 likes · 3 min read
How to Merge Overlapping Intervals in Go
Nullbody Notes
Nullbody Notes
Nov 22, 2023 · Fundamentals

How to Compare Version Numbers in Go – Interview Solution

This article explains the key steps for comparing dot‑separated version strings—ignoring leading zeros, handling different lengths, and performing left‑to‑right numeric comparison—accompanied by a complete Go implementation.

AlgorithmGostring parsing
0 likes · 3 min read
How to Compare Version Numbers in Go – Interview Solution
Liangxu Linux
Liangxu Linux
Nov 21, 2023 · Backend Development

How Go’s Built‑in HTTP Server Handles Connections and Requests

This article walks through building a minimal Go HTTP server, explains how ListenAndServe internally binds, listens, and accepts connections, details the server’s main loop, request handling, routing logic, and shows how to customize connection and state hooks with concrete code examples.

GoNetworkingbackend
0 likes · 8 min read
How Go’s Built‑in HTTP Server Handles Connections and Requests
37 Interactive Technology Team
37 Interactive Technology Team
Nov 20, 2023 · Fundamentals

What Are Stack and Heap?

The article explains Go’s stack and heap memory, showing that stack allocations are fast, LIFO‑ordered and compile‑time sized while heap allocations grow upward, require garbage collection, and occur when variables escape a function, urging developers to prefer stack use for better performance.

Garbage CollectionGoheap
0 likes · 6 min read
What Are Stack and Heap?
Nightwalker Tech
Nightwalker Tech
Nov 18, 2023 · Fundamentals

Reflections on a Decade of Judgments About Go and Rust

Looking back over ten years, the author revisits earlier blog posts and shares personal insights and judgments about the Go and Rust programming languages, concluding that choices often outweigh effort in shaping one’s technical path.

GoProgramming LanguagesRust
0 likes · 2 min read
Reflections on a Decade of Judgments About Go and Rust
Nullbody Notes
Nullbody Notes
Nov 17, 2023 · Fundamentals

How to Implement an O(1) LRU Cache for Interview Success

This article explains how to implement an O(1) LRU cache in Go by combining a hash table with a doubly linked list, detailing the put and get operations, eviction policy, and providing complete, ready‑to‑run source code along with illustrative diagrams.

Cache EvictionData StructuresDoubly Linked List
0 likes · 4 min read
How to Implement an O(1) LRU Cache for Interview Success
Nullbody Notes
Nullbody Notes
Nov 17, 2023 · Fundamentals

How to Decode Nested Strings Using a Stack in Go

This article explains how to decode nested strings formatted as k[encoded_string] by using a stack to record repetition counts and substrings, detailing the push/pop logic with examples like 2[a3[b]] and 3[a]2[bc] and providing a complete Go implementation.

AlgorithmGonested strings
0 likes · 5 min read
How to Decode Nested Strings Using a Stack in Go
AI Illustrated Series
AI Illustrated Series
Nov 16, 2023 · Fundamentals

Unlocking Go’s Secrets: nil, context, slices, maps, and concurrency primitives

This article provides a comprehensive, step‑by‑step analysis of Go’s core concepts—including nil handling, the context package, string and rune internals, unsafe pointers, memory alignment, WaitGroup, semaphores, channels, slices, map implementations, sync.Map, garbage collection, and reflection—illustrated with concrete code examples and detailed reasoning.

Garbage CollectionGoMemory
0 likes · 30 min read
Unlocking Go’s Secrets: nil, context, slices, maps, and concurrency primitives
Nullbody Notes
Nullbody Notes
Nov 16, 2023 · Fundamentals

Understanding the Combination Sum Problem with Backtracking in Go

This article explains the LeetCode 39 "Combination Sum" problem, illustrates recursion with an apple‑picking analogy, details the backtracking algorithm pattern, and provides a complete, well‑commented Go implementation that handles unlimited reuse of candidates and pruning based on the target sum.

GoLeetCodeRecursion
0 likes · 5 min read
Understanding the Combination Sum Problem with Backtracking in Go
DeWu Technology
DeWu Technology
Nov 15, 2023 · Backend Development

Thread Profiling: Design and Implementation of Client‑Server Performance Analysis

Thread profiling uses threshold‑triggered tasks on business threads to capture stack snapshots, which a dedicated profiler thread sends via high‑performance gRPC to a server that queues them in Kafka, enriches and stores them in ClickHouse, correlates with OpenTelemetry traces, and provides metrics that let developers quickly pinpoint latency bottlenecks and improve system stability.

GoKafkagRPC
0 likes · 11 min read
Thread Profiling: Design and Implementation of Client‑Server Performance Analysis
Nullbody Notes
Nullbody Notes
Nov 15, 2023 · Fundamentals

Binary Search Solution for LeetCode 162: Find Peak Element

This article explains how to solve LeetCode problem 162 (Find Peak Element) in O(log n) time using a binary‑search approach, detailing the three possible cases, providing pseudocode, and presenting a complete Go implementation that handles boundary conditions as negative infinity.

AlgorithmGoLeetCode
0 likes · 4 min read
Binary Search Solution for LeetCode 162: Find Peak Element
Tencent Cloud Developer
Tencent Cloud Developer
Nov 14, 2023 · Cloud Native

Monolithizing tRPC-Go Microservices: Architecture, Implementation, and Performance Gains

The article shows how to monolithize selected tRPC‑Go microservices by defining protobuf‑generated Go interfaces and swapping RPC proxies for in‑process implementations via a proxy API, cutting CPU usage by 61% while keeping microservice flexibility and offering best‑practice guidelines for Go service design.

GoMicroservicescloud-native
0 likes · 13 min read
Monolithizing tRPC-Go Microservices: Architecture, Implementation, and Performance Gains
Nullbody Notes
Nullbody Notes
Nov 11, 2023 · Fundamentals

How to Solve LeetCode 53: Maximum Subarray Sum with Dynamic Programming

The article explains a dynamic‑programming approach to the classic “Maximum Subarray Sum” problem, defining dp[i] as the best sum ending at index i, deriving the recurrence dp[i]=max(dp[i‑1]+nums[i], nums[i]), initializing base cases, and providing complete Go code.

AlgorithmGoLeetCode
0 likes · 4 min read
How to Solve LeetCode 53: Maximum Subarray Sum with Dynamic Programming
Nullbody Notes
Nullbody Notes
Nov 9, 2023 · Interview Experience

Validating Stack Sequences in Go: A Simple Microsoft Interview Solution

The article explains how to determine whether a given push sequence and pop sequence form a valid stack operation by using a temporary Go slice as a stack, iterating through the push list, and repeatedly popping while the top matches the next pop element, finally returning a boolean result.

AlgorithmGoInterview
0 likes · 3 min read
Validating Stack Sequences in Go: A Simple Microsoft Interview Solution
Su San Talks Tech
Su San Talks Tech
Nov 2, 2023 · Backend Development

How WeChat Powers Group Chats and Red Packets: Inside the Backend Architecture

This article dissects the design of WeChat's group chat system, covering functional and non‑functional requirements, high‑level component architecture, database schemas, face‑to‑face group creation, real‑time messaging, red‑packet algorithms, and Go code implementation, revealing how massive concurrency, performance, and storage challenges are solved.

Backend ArchitectureGoSystem Design
0 likes · 22 min read
How WeChat Powers Group Chats and Red Packets: Inside the Backend Architecture
Amap Tech
Amap Tech
Nov 1, 2023 · Backend Development

Gaode Go Ecosystem Evolution, Cloud‑Native Serverless Practices, and Project Refactoring Experience

The article details Gaode’s journey of building a high‑performance Go ecosystem that scaled from zero to tens of millions of QPS, comparing Go with Java and Erlang, outlining cloud‑native serverless architecture, and sharing real‑world refactoring and optimization case studies such as a million‑QPS rendering gateway and a Go‑based sharding middleware.

GCGoMicroservices
0 likes · 34 min read
Gaode Go Ecosystem Evolution, Cloud‑Native Serverless Practices, and Project Refactoring Experience
Senior Brother's Insights
Senior Brother's Insights
Oct 26, 2023 · Fundamentals

Tabs vs Spaces: Why Go Chooses Tabs and Others Favor Spaces

The article examines the long‑standing debate between tabs and spaces for code indentation, citing a massive GitHub analysis that shows spaces dominate most languages while Go uniquely enforces tabs, and explains the technical, historical, and practical reasons behind these preferences and how IDEs can enforce consistent styles.

GoSpacescoding standards
0 likes · 7 min read
Tabs vs Spaces: Why Go Chooses Tabs and Others Favor Spaces
Efficient Ops
Efficient Ops
Oct 24, 2023 · Operations

How to Monitor Business Metrics with Prometheus in Kubernetes

This article explains how to use Prometheus to monitor business‑level metrics in a Kubernetes environment, covering observability fundamentals, metric definitions, metric types, exposing metrics via a /metrics endpoint, and practical Go code examples for defining, recording, and scraping custom metrics.

GoKubernetesMonitoring
0 likes · 11 min read
How to Monitor Business Metrics with Prometheus in Kubernetes
37 Interactive Technology Team
37 Interactive Technology Team
Oct 23, 2023 · Backend Development

Investigation of Go HTTP Client Connection Pool Not Reusing Connections

The investigation revealed that the Go http.Client was not reusing connections because response bodies were closed before being fully read, causing the underlying connections to be marked dead; fully reading the bodies restored pooling, eliminated DNS‑resolution timeouts and dramatically lowered query‑per‑second spikes.

Connection PoolDNSGo
0 likes · 9 min read
Investigation of Go HTTP Client Connection Pool Not Reusing Connections
Tencent Cloud Developer
Tencent Cloud Developer
Oct 19, 2023 · Fundamentals

Profile-Guided Optimization (PGO) Principles and Practice in Go and C++

Profile‑Guided Optimization (PGO) collects runtime profiling data to recompile programs for higher performance, reducing branch mispredictions and improving code layout; Go gained built‑in PGO in 1.21 with typical 5 % gains, while C++ sees 15‑18 % QPS improvements and devirtualization benefits, and future work aims at deeper block ordering and register allocation.

C++GoPGO
0 likes · 16 min read
Profile-Guided Optimization (PGO) Principles and Practice in Go and C++
21CTO
21CTO
Oct 15, 2023 · Backend Development

Rust vs Go for Backend Development: Which Language Wins?

This article compares Rust and Go across performance, language features, concurrency, memory safety, ecosystem, learning curve, and real‑world use cases to help backend developers choose the most suitable language for their projects.

GoRustbackend development
0 likes · 19 min read
Rust vs Go for Backend Development: Which Language Wins?
21CTO
21CTO
Oct 12, 2023 · Databases

Why Dragonfly Claims 25× Faster Than Redis – Real Benchmarks Explained

This article introduces Dragonfly, an open‑source in‑memory database compatible with Redis and Memcached APIs, explains its architectural innovations, presents benchmark code comparing it with Redis, and discusses real‑world performance results and future development plans.

DragonflyGoIn-Memory Database
0 likes · 11 min read
Why Dragonfly Claims 25× Faster Than Redis – Real Benchmarks Explained
Didi Tech
Didi Tech
Oct 10, 2023 · Backend Development

Investigation of 300‑Second Redis Timeout Issues in a Go Service

The article details how a Go service’s 300‑second Redis call timeout was traced to a gateway’s full‑NAT session‑table loss, and explains how targeted retries, proper timeout settings, and rate‑limiting can prevent similar cascading failures in distributed systems.

GatewayGoRedis
0 likes · 9 min read
Investigation of 300‑Second Redis Timeout Issues in a Go Service
JD Retail Technology
JD Retail Technology
Sep 22, 2023 · Fundamentals

Master Go Basics: From Variables to Concurrency in One Guide

This article provides a comprehensive, beginner‑friendly walkthrough of Go language fundamentals, covering variable and constant declarations, zero values, functions with multiple returns and variadic parameters, struct‑based OOP, non‑intrusive interfaces, slices, maps, goroutines, channels, and the simple error‑handling model with defer, panic, and recover.

Gobasicsconcurrency
0 likes · 24 min read
Master Go Basics: From Variables to Concurrency in One Guide
DeWu Technology
DeWu Technology
Sep 15, 2023 · Backend Development

An Introduction to Generics in Go

Go introduced generics in version 1.18, allowing developers to write reusable, type‑safe code by defining type parameters and constraints in square brackets, instantiating them with concrete type arguments, and using generic functions, types, and collections such as stacks and sets to improve readability, safety, and maintainability.

Example CodeGogenerics
0 likes · 13 min read
An Introduction to Generics in Go
Bilibili Tech
Bilibili Tech
Sep 8, 2023 · Backend Development

Investigation of Goroutine Leak in Go

The article details how a sudden surge in goroutine and heap usage was traced to repeatedly creating gRPC clients instead of reusing a singleton, leading to blocked goroutines and TCP connections, and explains using pprof, stack traces, and tools like goleak to detect and prevent such leaks.

DebuggingGoGo Programming
0 likes · 13 min read
Investigation of Goroutine Leak in Go
37 Interactive Technology Team
37 Interactive Technology Team
Sep 7, 2023 · Cloud Native

Design and Implementation of the kjob Asynchronous Task Scheduling Platform on Kubernetes

The 37Game team built the cloud‑native kjob platform to replace VM‑based schedulers, providing a unified, highly available Kubernetes solution that manages both CronJob‑style scheduled tasks and long‑running Deployments through a backend‑agent architecture, offering CRUD operations, rich configuration, real‑time monitoring, alerting, and seamless migration.

Asynchronous JobsCloud-nativeGo
0 likes · 15 min read
Design and Implementation of the kjob Asynchronous Task Scheduling Platform on Kubernetes
Architect
Architect
Sep 4, 2023 · Information Security

Design and Implementation of a Unified Permission Management Service (MPS)

This article details the design and development of a unified permission management service (MPS) that consolidates RBAC, ACL, and DAC models to solve fragmented enterprise permission issues, covering requirement analysis, technical selection, functional modules, deployment, and performance outcomes.

ACLDACGo
0 likes · 16 min read
Design and Implementation of a Unified Permission Management Service (MPS)
Senior Brother's Insights
Senior Brother's Insights
Aug 30, 2023 · Backend Development

Why Learning Multiple Programming Languages Boosts Your Backend Skills

The author reflects on how studying several programming languages—Java, Go, and Python—mirrors learning foreign tongues, revealing that cross‑language comparison sharpens understanding of data structures, HTTP fundamentals, and framework implementations, ultimately deepening overall software development expertise.

GoProgramming Languagesbackend development
0 likes · 5 min read
Why Learning Multiple Programming Languages Boosts Your Backend Skills
FunTester
FunTester
Aug 24, 2023 · Backend Development

How to Fix Critical Bugs in a Go Goroutine Pool and Boost Scaling Efficiency

This article analyzes several bugs discovered in a Go goroutine pool implementation—incorrect active count, mismatched execution counters, slow scaling during QPS spikes, and inefficient recycling—and presents detailed code fixes and redesigns to achieve accurate metrics and faster, more graceful worker management.

Gobackendbug fix
0 likes · 11 min read
How to Fix Critical Bugs in a Go Goroutine Pool and Boost Scaling Efficiency
JD Tech
JD Tech
Aug 23, 2023 · Fundamentals

Go Language Basics: Syntax, Variables, Control Flow, OOP, Concurrency, and Error Handling

This article introduces Go to developers familiar with other object‑oriented languages, covering the language definition, basic syntax such as variable and constant declarations, control structures, functions with multiple returns and variadic parameters, data structures like arrays, slices and maps, struct‑based object‑orientation, interfaces, goroutine‑based concurrency, channels, mutexes, and the simple error‑handling model using error, defer, panic, and recover.

GoSyntaxconcurrency
0 likes · 25 min read
Go Language Basics: Syntax, Variables, Control Flow, OOP, Concurrency, and Error Handling
Baidu Geek Talk
Baidu Geek Talk
Aug 14, 2023 · Information Security

Design and Implementation of Unified Permission Management Service (MPS) at Baidu

Unified Permission Management Service (MPS) at Baidu centralizes fragmented permission systems across internal platforms, integrating ACL, DAC, and RBAC models via Baidu's GDP framework, and provides modules for platform and node management, permission CRUD, workflow approvals, and audit/recovery, now serving over 20,000 users and managing more than 100,000 permission nodes.

ACLBaiduDAC
0 likes · 16 min read
Design and Implementation of Unified Permission Management Service (MPS) at Baidu
21CTO
21CTO
Aug 10, 2023 · Backend Development

What’s New in Go 1.21? Key Features, Performance Boosts, and Code Samples

Go 1.21.0 introduces toolchain enhancements, new built‑in functions, expanded standard library packages, performance improvements through PGO and garbage‑collector tuning, experimental WASI support, and version‑number changes, all illustrated with concise code examples for developers.

GoLanguage Featuresgo-1.21
0 likes · 7 min read
What’s New in Go 1.21? Key Features, Performance Boosts, and Code Samples
Cognitive Technology Team
Cognitive Technology Team
Aug 6, 2023 · Fundamentals

Common Pitfalls When Using Go Slices and How to Avoid Them

This article explains three typical pitfalls of Go slices—ignoring the slice returned by append, unintentionally sharing the underlying array which can cause memory leaks, and the value‑copy behavior of for‑range loops—while also showing how to inspect slice internals using unsafe pointers.

Goappendbackend
0 likes · 5 min read
Common Pitfalls When Using Go Slices and How to Avoid Them
Didi Tech
Didi Tech
Aug 3, 2023 · Cloud Native

eBPF-Based Cross-Language Non-Intrusive Traffic Recording for Cloud-Native Services

The article describes an eBPF‑based, language‑agnostic traffic recording framework that hooks low‑level socket operations and thread identifiers to capture complete request‑response flows across Java, PHP, and Go services without modifying application code, dramatically lowering implementation and maintenance costs for cloud‑native traffic replay.

Cloud NativeGoSocket
0 likes · 15 min read
eBPF-Based Cross-Language Non-Intrusive Traffic Recording for Cloud-Native Services
FunTester
FunTester
Jul 28, 2023 · Fundamentals

Unveiling Go’s Channel: Deep Dive into Runtime, Memory Leaks, and Best Practices

This article explores Go's channel implementation—from its CSP‑inspired design and internal hchan structure to real‑world memory‑leak debugging, creation nuances, send/receive mechanics, and proper closing—providing developers with a comprehensive understanding of safe concurrent programming in Go.

GoRuntimechannel
0 likes · 31 min read
Unveiling Go’s Channel: Deep Dive into Runtime, Memory Leaks, and Best Practices
Senior Brother's Insights
Senior Brother's Insights
Jul 27, 2023 · Backend Development

How Varied Config Strategies in a Go Project Reveal Team Work Styles

The article recounts a Go project's evolution of configuration handling—from hard‑coded DB credentials to a unified global struct and finally an init‑based implicit loader—highlighting how each teammate’s approach reflects distinct mindsets, knowledge gaps, and productivity trade‑offs, and invites readers to consider their own collaboration preferences.

GoSoftware EngineeringTeam Collaboration
0 likes · 5 min read
How Varied Config Strategies in a Go Project Reveal Team Work Styles
Tongcheng Travel Technology Center
Tongcheng Travel Technology Center
Jul 26, 2023 · Cloud Native

Design and Implementation of a Cloud‑Native Operator Platform for Component Management at Tongcheng Travel

This article details Tongcheng Travel's cloud‑native migration journey, describing the challenges of resource quota management, component versioning, and operational automation, and explains how a Kubernetes Operator platform built with Go, kubebuilder, and a watch‑broadcast mechanism addresses these issues while outlining future expansion plans.

GoKubernetesconfiguration management
0 likes · 9 min read
Design and Implementation of a Cloud‑Native Operator Platform for Component Management at Tongcheng Travel
37 Interactive Technology Team
37 Interactive Technology Team
Jul 26, 2023 · Backend Development

Investigation and Resolution of CPU Spike in a Kafka-Go Consumer Using pprof

Using Go’s pprof, the team traced a gradual CPU spike in a high‑throughput kafka‑go consumer to a saturated commit queue and repeatedly nested context values, which forced costly lookups; eliminating the unnecessary trace‑id context injection (or recreating a fresh context each loop) resolved the issue and reduced CPU usage to under 2 %.

CPU profilingGoKafka
0 likes · 10 min read
Investigation and Resolution of CPU Spike in a Kafka-Go Consumer Using pprof
FunTester
FunTester
Jul 25, 2023 · Backend Development

Implementing a Dynamic QPS Load‑Testing Model in Go Using a Goroutine Pool

This article presents a Go‑based dynamic QPS load‑testing framework that leverages a custom goroutine pool, explains the rationale behind reusing goroutines, provides core functions for task execution and console command handling, and includes a complete runnable demo illustrating high‑throughput performance testing.

GoQPSgoroutine pool
0 likes · 5 min read
Implementing a Dynamic QPS Load‑Testing Model in Go Using a Goroutine Pool
Alibaba Cloud Native
Alibaba Cloud Native
Jul 22, 2023 · Operations

How to Add Redis Cache Expire and Memory‑Limit Experiments to ChaosBlade

This guide walks through the background, implementation, usage examples, and step‑by‑step open‑source contribution process for adding Redis cache expiration and memory‑limit chaos experiments to the ChaosBlade platform, including code snippets, Git workflow, and testing procedures.

Chaos EngineeringChaosBladeCloud Native
0 likes · 11 min read
How to Add Redis Cache Expire and Memory‑Limit Experiments to ChaosBlade
Bilibili Tech
Bilibili Tech
Jul 21, 2023 · Backend Development

Understanding and Avoiding Pitfalls of Closures in Go

The article explains Go closures, shows how capturing loop variables by reference can cause bugs like repeated values, demonstrates correct patterns such as copying variables inside loops or passing them as parameters, and offers guidelines to avoid common pitfalls with defer and concurrency.

GoPitfallanonymous function
0 likes · 11 min read
Understanding and Avoiding Pitfalls of Closures in Go
Shopee Tech Team
Shopee Tech Team
Jul 13, 2023 · Backend Development

Design and Implementation of seadt-SAGA Distributed Transaction Framework

The article details Shopee’s seadt‑SAGA framework—a Go‑based distributed transaction solution that implements the SAGA pattern via two modes, orchestration with a central coordinator and collaboration with embedded logic, explains their state‑machine designs, compares rollback ordering using vector clocks versus sequence numbers, and discusses each mode’s trade‑offs.

GoMicroservicesOrchestration
0 likes · 23 min read
Design and Implementation of seadt-SAGA Distributed Transaction Framework
MaGe Linux Operations
MaGe Linux Operations
Jul 10, 2023 · Operations

Deploy and Use rtty for Web‑Based Remote Linux Management

This guide explains how rtty combines a lightweight C client, a Go server, and a Vue front‑end to provide web‑accessible terminals for remote Linux device maintenance, covering its key features, installation steps, token generation, and browser‑based access.

C++GoLinux
0 likes · 4 min read
Deploy and Use rtty for Web‑Based Remote Linux Management
Bilibili Tech
Bilibili Tech
Jul 7, 2023 · Backend Development

Applying DDD and Hexagonal Architecture to Build a Unified Danmaku Platform

The article explains how Bilibili’s senior engineer uses Domain‑Driven Design combined with hexagonal architecture to merge separate VOD and live‑stream Danmaku services into a unified platform, detailing sub‑domain decomposition, six‑sided ports, rich models, mapping logic, and the trade‑offs of improved modularity, maintainability, and reduced duplication versus added design and refactoring effort.

DDDDomain modelingGo
0 likes · 21 min read
Applying DDD and Hexagonal Architecture to Build a Unified Danmaku Platform
Baidu Geek Talk
Baidu Geek Talk
Jul 5, 2023 · Backend Development

How Baidu Wenku App Migrated Its Backend from PHP to Go: Lessons and Results

This article details Baidu Wenku App's backend migration from a PHP‑based stack to Go, covering the motivation, technical debt, technology selection, step‑by‑step migration strategy, quality assurance practices, performance improvements, and key takeaways for large‑scale service refactoring.

GoMicroservicesPHP
0 likes · 17 min read
How Baidu Wenku App Migrated Its Backend from PHP to Go: Lessons and Results
IT Services Circle
IT Services Circle
Jun 29, 2023 · Backend Development

Tencent Testing Engineer Interview Experience and Technical Q&A

This article shares a detailed account of a Tencent testing engineer interview, covering self‑introduction, Go knowledge, Redis performance, distributed lock implementation, semaphore mechanics, RPC vs HTTP, concurrency usage, Git security practices, Linux commands, and a few brain‑teaser and algorithm questions.

GoInterviewRPC
0 likes · 13 min read
Tencent Testing Engineer Interview Experience and Technical Q&A
FunTester
FunTester
Jun 28, 2023 · Backend Development

Designing a Go Coroutine Pool Based on Java ThreadPoolExecutor

This article explains how to implement a high‑performance Go coroutine pool by adapting key features of Java’s ThreadPoolExecutor, covering core parameters, task queue design, dynamic scaling, worker management, timeout handling, and provides complete code examples and self‑test results.

GoThreadPoolbackend
0 likes · 10 min read
Designing a Go Coroutine Pool Based on Java ThreadPoolExecutor
Open Source Linux
Open Source Linux
Jun 26, 2023 · Operations

Master Disk Space Insight: Install and Use the Go‑Based “diskusage” Tool

This guide introduces the Go‑based “diskusage” utility, shows how to install it with a single command, explains its usage with examples such as filtering specific file types, displaying sizes in gigabytes, and enabling colored output, and notes its cross‑platform support for Linux, macOS, and Windows.

Disk UsageGocommand-line
0 likes · 2 min read
Master Disk Space Insight: Install and Use the Go‑Based “diskusage” Tool
php Courses
php Courses
Jun 15, 2023 · Backend Development

Benefits of Learning Go for PHP Developers

The article explains why PHP programmers should learn Go, highlighting its faster execution, superior concurrency support, and built‑in web server capabilities, while providing simple code examples and mentioning a related training course.

GoWeb Developmentperformance
0 likes · 5 min read
Benefits of Learning Go for PHP Developers
37 Interactive Technology Team
37 Interactive Technology Team
Jun 15, 2023 · Backend Development

Concurrent Safety of Go Maps: Issues, Solutions, and Performance Comparison

Go maps are not safe for concurrent access, so programs can panic when multiple goroutines read and write the same map; to prevent this you can use sync.Once for immutable data, protect maps with sync.RWMutex, employ sharded locks via concurrent‑map, or use the built‑in sync.Map, each offering different performance trade‑offs depending on read/write ratios and concurrency level.

GoRWMutexconcurrency
0 likes · 13 min read
Concurrent Safety of Go Maps: Issues, Solutions, and Performance Comparison
php Courses
php Courses
Jun 8, 2023 · Backend Development

Benefits of Learning Go for PHP Programmers

Learning Go offers PHP developers faster execution, superior concurrency, and a built‑in web server, making it easier to build high‑performance applications, and this article demonstrates these advantages with simple code examples while also providing resources for further study.

GoProgramming LanguageWeb Server
0 likes · 4 min read
Benefits of Learning Go for PHP Programmers
ITPUB
ITPUB
Jun 2, 2023 · Backend Development

Hands‑On DDD in Go: Building a Microservice‑Based E‑Commerce System

This article, the final installment of a DDD series, walks through a practical implementation of Domain‑Driven Design in Go using Kitex and Thrift, covering bounded contexts, layered architecture, domain modeling, persistence, factories, domain services, and cross‑cutting concerns in a fictional e‑commerce system.

DDDDomain-Driven DesignGo
0 likes · 12 min read
Hands‑On DDD in Go: Building a Microservice‑Based E‑Commerce System
Bilibili Tech
Bilibili Tech
Jun 2, 2023 · Backend Development

Investigation and Resolution of Service Availability Fluctuations in a High‑QPS Go Backend Service

An investigation of a 100k‑QPS Go monolith revealed that intermittent availability drops were caused by a memory‑leak in the third‑party gcache LFU implementation, which inflated GC work and produced long mark phases; upgrading gcache eliminated the leak and restored 0.999+ availability, highlighting the need for thorough observability and dependency monitoring.

Garbage CollectionGogcache
0 likes · 10 min read
Investigation and Resolution of Service Availability Fluctuations in a High‑QPS Go Backend Service