Tagged articles

Go

1930 articles · Page 8 of 20
BirdNest Tech Talk
BirdNest Tech Talk
Jan 14, 2025 · Fundamentals

Master Go Naming: 30+ Rules for Clean, Idiomatic Code

This article presents a comprehensive, step‑by‑step analysis of Go naming conventions, explaining why each rule matters, illustrating each point with concrete code snippets and real‑world examples, and showing how to apply the guidelines to variables, functions, packages, structs, interfaces, errors, constants, enums and comments for truly clean Go code.

Gobest practicesclean code
0 likes · 24 min read
Master Go Naming: 30+ Rules for Clean, Idiomatic Code
Raymond Ops
Raymond Ops
Jan 13, 2025 · Cloud Native

How Docker Transforms Go Web App Development and Deployment

This tutorial explains how to containerize a simple Go web application with Docker, set up a development workflow using Docker and Bee, build and run images, and automate continuous integration and deployment with Semaphore, covering prerequisites, Dockerfile creation, testing, and production deployment steps.

DockerGoSemaphore
0 likes · 23 min read
How Docker Transforms Go Web App Development and Deployment
php Courses
php Courses
Jan 13, 2025 · Backend Development

Building GraphQL Services with Go: Course Overview

This course teaches developers with Go experience how to design and implement GraphQL APIs, covering fundamentals, server construction, request handling, schema definition, and practical deployment techniques to enhance data interaction flexibility and efficiency.

APIGoGraphQL
0 likes · 2 min read
Building GraphQL Services with Go: Course Overview
Radish, Keep Going!
Radish, Keep Going!
Jan 13, 2025 · Fundamentals

Can Go’s New ‘?’ Operator Simplify Error Handling?

The proposal introduces a ‘?’ operator to automatically handle errors in Go, aiming to reduce boilerplate while preserving explicitness, but it raises concerns about code readability, variable shadowing, and the effort required to update existing codebases.

Goerror handlinglanguage proposal
0 likes · 8 min read
Can Go’s New ‘?’ Operator Simplify Error Handling?
Radish, Keep Going!
Radish, Keep Going!
Jan 9, 2025 · Backend Development

Why Go’s Simple Design Sparks Both Praise and Criticism

An in‑depth look at Go’s origins, design goals, and the trade‑offs that provoke both admiration for its simplicity in large‑scale server development and criticism over its limited generics, file‑system API, error handling, and FFI capabilities.

GoProgramming Languagedesign
0 likes · 13 min read
Why Go’s Simple Design Sparks Both Praise and Criticism
Raymond Ops
Raymond Ops
Jan 7, 2025 · Backend Development

Mastering Go’s Context: Control Goroutine Lifecycles and Cancel Operations

This article explains Go's Context concept, its role in managing Goroutine lifecycles, the standard library's context package API, how to create and cancel contexts, share values safely, and best practices for using Contexts in concurrent backend applications.

Gobackend developmentconcurrency
0 likes · 11 min read
Mastering Go’s Context: Control Goroutine Lifecycles and Cancel Operations
BirdNest Tech Talk
BirdNest Tech Talk
Jan 6, 2025 · Backend Development

Mastering Go’s net Package: Listener, Dial, and Conn Functions Explained

This comprehensive guide walks through Go’s net package, detailing how Listener functions create servers, how Dial functions initiate client connections, the nuances of network and address formats, and the behavior of various Conn types such as TCPConn, UDPConn, IPConn, and RawConn, complete with code examples and best‑practice tips.

.NETGoTCP
0 likes · 32 min read
Mastering Go’s net Package: Listener, Dial, and Conn Functions Explained
Radish, Keep Going!
Radish, Keep Going!
Jan 6, 2025 · Information Security

How Much Data Does a Simple HTTPS Request Actually Transfer?

Using a local Go server and Wireshark, the author measured that a basic HTTPS request transmits 2,164 bytes—about ten times more than an equivalent HTTP request—revealing the bandwidth impact of TLS handshakes and suggesting when HTTP may be preferable for internal, non‑sensitive traffic.

GoHTTPSTLS
0 likes · 4 min read
How Much Data Does a Simple HTTPS Request Actually Transfer?
BirdNest Tech Talk
BirdNest Tech Talk
Jan 6, 2025 · Fundamentals

Mastering Go Concurrency: From Basics to Advanced Patterns

This article outlines a comprehensive guide to Go's concurrency model, covering fundamental concepts, goroutine scheduling, synchronization primitives, channel communication, common patterns, deadlock avoidance techniques, and performance‑optimizing mechanisms with concrete code examples and step‑by‑step explanations.

ChannelsDeadlockGo
0 likes · 13 min read
Mastering Go Concurrency: From Basics to Advanced Patterns
IT Services Circle
IT Services Circle
Jan 1, 2025 · Backend Development

Go 1.24 Introduces Generic Type Alias Support

The article explains how Go 1.24 finally enables type aliases to have their own generic type parameters, provides background on the previous limitation, demonstrates usage with concrete code examples, and notes the experimental flag required in Go 1.23.

GoGo1.24backend development
0 likes · 5 min read
Go 1.24 Introduces Generic Type Alias Support
Raymond Ops
Raymond Ops
Dec 31, 2024 · Operations

Why Go’s GC Skips Scanning Pointer‑Free Objects and How It Boosts Performance

This article explains the Go runtime’s garbage‑collector optimization that skips scanning objects without pointers, describes how the noscan flag is set during memory allocation, shows the code paths that enforce the skip, benchmarks the performance gain, and offers practical tips for applying the technique in real‑world Go programs.

Garbage CollectionGoMemory Management
0 likes · 20 min read
Why Go’s GC Skips Scanning Pointer‑Free Objects and How It Boosts Performance
FunTester
FunTester
Dec 30, 2024 · Backend Development

Top Go Frameworks and Libraries in 2024: Gin, Beego, Echo, Buffalo, and GORM

This article reviews five leading Go frameworks and libraries—Gin, Beego, Echo, Buffalo, and GORM—detailing their core features, typical use cases, and reasons to choose each, helping developers select the most suitable tools for modern backend and full‑stack development in 2024.

BeegoBuffaloGORM
0 likes · 15 min read
Top Go Frameworks and Libraries in 2024: Gin, Beego, Echo, Buffalo, and GORM
Tencent Cloud Developer
Tencent Cloud Developer
Dec 24, 2024 · Backend Development

From Java to Go: Key Differences Every Developer Must Know

This article compares Java and Go across syntax simplicity, type systems, object‑oriented features, pointers, error handling, concurrency, reflection, and community culture, providing concrete code examples and practical insights to help Java developers transition smoothly to Go.

GoLanguage comparisonbackend development
0 likes · 14 min read
From Java to Go: Key Differences Every Developer Must Know
Alibaba Cloud Observability
Alibaba Cloud Observability
Dec 24, 2024 · Operations

How to Achieve Full Observability for Go Apps Without Intrusive Agents

This article compares three Go observability solutions—SDK instrumentation, eBPF‑based monitoring, and compile‑time code injection—explaining their mechanisms, open‑source implementations, trade‑offs, and why Alibaba Cloud's Instgo compile‑time approach offers a low‑overhead, non‑intrusive APM alternative.

Cloud NativeGoInstrumentation
0 likes · 11 min read
How to Achieve Full Observability for Go Apps Without Intrusive Agents
Linux Kernel Journey
Linux Kernel Journey
Dec 24, 2024 · Operations

How to Use tcpw with eBPF to Capture Curl’s Five‑Tuple Information

This article introduces tcpw, a small eBPF‑based utility that traces TCP, UDP, and Unix‑domain sockets to display the five‑tuple of commands like curl or telnet, explains its command‑line options, shows concrete usage examples, and details the underlying BPF and Go implementation, including connect, accept, and fork tracing.

GoLinux tracingaccept
0 likes · 8 min read
How to Use tcpw with eBPF to Capture Curl’s Five‑Tuple Information
Radish, Keep Going!
Radish, Keep Going!
Dec 23, 2024 · Backend Development

Speed Up Go Cache Expiration Tests with testing/synctest

This article explains how Go's testing/synctest experiment speeds up cache expiration tests by using a virtual clock and bubble isolation, providing code examples that reduce a five‑second wait to milliseconds while ensuring reliable concurrent test execution.

Goconcurrencygo-cache
0 likes · 7 min read
Speed Up Go Cache Expiration Tests with testing/synctest
21CTO
21CTO
Dec 22, 2024 · Backend Development

How to Structure a Go Project from Scratch: A Step‑by‑Step Guide

This tutorial walks new Go developers through naming a project, initializing a module, creating the essential directory layout and files, adding tests, and building a simple CLI while emphasizing Go's KISS and YAGNI principles.

GoProject Structurebackend development
0 likes · 8 min read
How to Structure a Go Project from Scratch: A Step‑by‑Step Guide
BirdNest Tech Talk
BirdNest Tech Talk
Dec 16, 2024 · Backend Development

Five Ways to Build a Broadcast Notifier in Go

This article examines five Go implementations of a broadcast notifier—using sync.Cond, channels, context, sync.WaitGroup, and sync.RWMutex—detailing their code, execution flow, and trade‑offs so readers can understand how each primitive achieves notification broadcasting.

BroadcastGochannel
0 likes · 9 min read
Five Ways to Build a Broadcast Notifier in Go
Java Tech Enthusiast
Java Tech Enthusiast
Dec 15, 2024 · Fundamentals

Postfix Type Declarations in Modern Programming Languages

Postfix type declarations, as seen in modern languages such as Go and Rust, place the type after the variable name—a style the author links to cultural naming conventions, arguing it highlights identifiers and can enhance readability after compilation, a practice historically validated by Pascal and Delphi.

GoRustType Position
0 likes · 4 min read
Postfix Type Declarations in Modern Programming Languages
Java Tech Enthusiast
Java Tech Enthusiast
Dec 8, 2024 · Backend Development

Performance Comparison of Spring Boot Native Image, JAR, Go, and Rust Deployments

The article benchmarks a Spring Boot 3 service as a GraalVM native image, a traditional JAR, and Go and Rust versions, showing the native binary starts in under a second with ~70 MB memory and 7 k requests/s, the JAR needs seconds and 200 MB, while Go and Rust use 10 MB and 3 MB respectively with throughput, illustrating native images’ fast startup and lower runtime footprint despite longer compilation.

GoGraalVMNative Image
0 likes · 9 min read
Performance Comparison of Spring Boot Native Image, JAR, Go, and Rust Deployments
Rare Earth Juejin Tech Community
Rare Earth Juejin Tech Community
Dec 8, 2024 · Backend Development

Designing an Elegant Error‑Handling Framework for Go Applications

This article analyses the pitfalls of traditional error‑checking and panic handling in Go order‑processing code, demonstrates how excessive inline checks and scattered defer statements lead to maintenance nightmares, and proposes a reusable try‑catch‑finally library that cleanly separates business logic, unifies panic recovery, and guarantees resource cleanup.

Goerror handlingpanic recovery
0 likes · 19 min read
Designing an Elegant Error‑Handling Framework for Go Applications
Radish, Keep Going!
Radish, Keep Going!
Dec 6, 2024 · Backend Development

How BigCache Achieves Ultra‑Fast In‑Memory Caching in Go

This article explains how the Go library BigCache uses sharding, efficient hash functions, and memory‑optimised data structures to deliver high‑concurrency, low‑latency caching, while avoiding GC bottlenecks and providing practical code examples and performance benchmarks.

GoMemory OptimizationSharding
0 likes · 12 min read
How BigCache Achieves Ultra‑Fast In‑Memory Caching in Go
BirdNest Tech Talk
BirdNest Tech Talk
Dec 6, 2024 · Backend Development

Go vs Rust Concurrency: Stackful vs Stackless Coroutines and Memory Impact

The article compares Go’s stackful, green‑thread model with Rust’s stackless, future‑based approach, explaining how each runtime schedules tasks, the memory overhead of goroutine stacks (2 KiB minimum in Go 1.22), the challenges of async‑await integration, and why Rust’s performance gains come with a fragmented ecosystem.

CoroutinesGoMemory
0 likes · 8 min read
Go vs Rust Concurrency: Stackful vs Stackless Coroutines and Memory Impact
Linux Kernel Journey
Linux Kernel Journey
Nov 30, 2024 · Fundamentals

How a SIGPIPE Signal Crashed Our Service and the Fix We Applied

During a gray‑release, a Go‑Rust service repeatedly crashed when a dependent process was hot‑upgraded; the root cause was an unhandled SIGPIPE signal generated by the kernel on a broken TCP connection, which terminated the process without a core dump, and the article explains the kernel mechanics and the solution of ignoring SIGPIPE.

CgoGoLinux signals
0 likes · 16 min read
How a SIGPIPE Signal Crashed Our Service and the Fix We Applied
Subtle Storm
Subtle Storm
Nov 29, 2024 · Backend Development

Mastering Go’s net/http Package: A Practical Guide

An in‑depth guide to Go’s net/http package explains its role as a standard‑library solution for HTTP client and server tasks, shows how to import it, demonstrates GET, POST and custom requests, builds simple servers with routing, adds middleware, and outlines common use cases such as APIs and web crawlers.

GoHTTP clientHTTP server
0 likes · 10 min read
Mastering Go’s net/http Package: A Practical Guide
Subtle Storm
Subtle Storm
Nov 27, 2024 · Fundamentals

Understanding Go’s new vs. make: When and Why to Use Each

This article explains the shared behavior of Go's new and make functions, highlights their key differences—including supported types, return values, and initialization details—and provides concrete code examples to show how each should be used in practice.

Gochannelmake
0 likes · 7 min read
Understanding Go’s new vs. make: When and Why to Use Each
Go Programming World
Go Programming World
Nov 25, 2024 · Backend Development

Understanding Go's singleflight: Request Merging, Implementation and Use Cases

singleflight, a Go concurrency primitive from the x/sync package, merges duplicate in‑flight requests to reduce server load, with detailed usage examples, source code analysis, and discussion of its differences from sync.Once and typical application scenarios such as cache‑penetration, remote calls, and task deduplication.

Gocacheconcurrency
0 likes · 26 min read
Understanding Go's singleflight: Request Merging, Implementation and Use Cases
BirdNest Tech Talk
BirdNest Tech Talk
Nov 20, 2024 · Backend Development

How to Build High‑Performance RDMA Applications in Go with rsocket

This article explains the fundamentals of RDMA, compares libibverbs and rdma_cm with the user‑space rsocket API, and walks through a complete Go implementation using the smallnest/rsocket library, including both server and client code examples and practical deployment tips.

GoRDMAhigh performance
0 likes · 13 min read
How to Build High‑Performance RDMA Applications in Go with rsocket
php Courses
php Courses
Nov 20, 2024 · Backend Development

Go Language GraphQL Service Development Course Overview

This course teaches developers with basic Go knowledge how to build GraphQL services, covering fundamentals, schema design, request handling, and practical integration using Go, while comparing graphql-go and gqlgen and demonstrating deployment with Drone CI/CD.

APIGoGraphQL
0 likes · 5 min read
Go Language GraphQL Service Development Course Overview
Cognitive Technology Team
Cognitive Technology Team
Nov 19, 2024 · Operations

Compile-Time Automatic Instrumentation for Go Applications: Principles, Modular Extensions, and Practical Usage

This article introduces a zero‑intrusive compile‑time automatic instrumentation framework for Go, explains its preprocessing and code‑injection mechanisms, and provides modular extension principles with concrete examples such as HTTP header logging, sort algorithm replacement, SQL injection protection, and gRPC traffic control.

Automatic InstrumentationGoModular Extension
0 likes · 18 min read
Compile-Time Automatic Instrumentation for Go Applications: Principles, Modular Extensions, and Practical Usage
Tencent Cloud Developer
Tencent Cloud Developer
Nov 19, 2024 · Backend Development

Ten Common Interface Performance Optimization Techniques

Ten practical techniques—early validation, batch queries, asynchronous processing, parallel execution, caching, connection pooling, response compression, message‑queue decoupling, security best practices, and reusable design patterns—collectively reduce latency, boost throughput, and improve scalability of high‑concurrency interfaces.

Asynchronous ProgrammingDesign PatternsGo
0 likes · 29 min read
Ten Common Interface Performance Optimization Techniques
Alibaba Cloud Developer
Alibaba Cloud Developer
Nov 19, 2024 · Operations

Zero‑Intrusion Go Instrumentation: Auto‑Inject Monitoring & Governance

This article introduces a compile‑time, zero‑intrusion auto‑instrumentation technique for Go applications that enables seamless monitoring, service governance, security checks, and traffic protection through modular JSON‑driven code injection, with practical examples covering HTTP headers, sorting algorithms, SQL injection prevention, and gRPC traffic control.

GoInstrumentationService Governance
0 likes · 17 min read
Zero‑Intrusion Go Instrumentation: Auto‑Inject Monitoring & Governance
Java Architecture Stack
Java Architecture Stack
Nov 18, 2024 · Fundamentals

Inside Go’s Runtime: How mcache and mheap Manage Memory

This article provides a detailed technical analysis of Go's runtime memory management, covering the initialization of the mheap structure, small‑object allocation via mcache, large‑object handling, the three‑color mark‑and‑sweep garbage collector, memory release mechanisms, and the optimization techniques that coordinate mcache and mheap for efficient concurrent execution.

Garbage CollectionGoMemory Management
0 likes · 12 min read
Inside Go’s Runtime: How mcache and mheap Manage Memory
Rare Earth Juejin Tech Community
Rare Earth Juejin Tech Community
Nov 18, 2024 · Cloud Native

Developing a Custom Kubernetes Controller for Flink Task Scheduling

This article provides a step‑by‑step guide to building a custom Kubernetes controller in Go that uses Prometheus metrics to intelligently schedule Flink TaskManager Pods, covering the underlying scheduler concepts, code implementation, Docker image creation, RBAC setup, deployment, testing, and advanced considerations.

Cloud NativeCustom SchedulerFlink
0 likes · 38 min read
Developing a Custom Kubernetes Controller for Flink Task Scheduling
Tencent Cloud Developer
Tencent Cloud Developer
Nov 5, 2024 · Backend Development

Understanding and Optimizing Go Performance with pprof and trace Tools

The article teaches Go developers how to generate and analyze CPU, heap, allocation, and goroutine profiles with pprof and full‑runtime traces, interpret SVG flame‑graphs, top lists, and source views, and apply concrete optimizations—such as buffering channels and using sync.Pool—to dramatically speed up a Mandelbrot generator.

GoHeap AnalysisOptimization
0 likes · 58 min read
Understanding and Optimizing Go Performance with pprof and trace Tools
php Courses
php Courses
Nov 4, 2024 · Backend Development

From PHP Frameworks to Go: Embracing Simplicity Over Perfection

The article reflects on how perfectionism can hinder progress and contrasts the framework‑heavy, ecosystem‑rich world of PHP with Go's minimalist, low‑level approach, arguing that a sufficiently good solution and simplicity often outweigh the pursuit of an unattainable ideal.

FrameworksGoPHP
0 likes · 7 min read
From PHP Frameworks to Go: Embracing Simplicity Over Perfection
dbaplus Community
dbaplus Community
Oct 29, 2024 · Databases

Why UUID v7 Beats UUID v4 as a Clustered Index – Performance Test Results

This article compares UUID v4 and UUID v7 as clustered index keys, explains their structures, lists pros and cons, describes a Docker‑based MySQL experiment using Node.js and Go, presents single‑ and multi‑thread insertion timings, and analyses why the time‑ordered UUID v7 (and serial IDs) outperform random UUID v4.

Clustered IndexDockerGo
0 likes · 14 min read
Why UUID v7 Beats UUID v4 as a Clustered Index – Performance Test Results
BirdNest Tech Talk
BirdNest Tech Talk
Oct 27, 2024 · Fundamentals

Why Go 1.23’s New Iterator Breaks Nested Loops and How to Spot It

The article reveals a bug in Go 1.23’s newly added iterator that corrupts results in three‑level nested loops, demonstrates the issue with a reproducible code sample, explains the underlying cause, offers a temporary compile‑flag workaround, and notes the imminent fix.

Compiler FlagsDebuggingGo
0 likes · 4 min read
Why Go 1.23’s New Iterator Breaks Nested Loops and How to Spot It
Top Architect
Top Architect
Oct 24, 2024 · Backend Development

tldb Distributed Lock: Usage Guide for Go and Java

This article introduces tldb's distributed lock mechanism, explains lock, trylock, and unlock methods, and provides step‑by‑step Go and Java client examples—including code snippets—for acquiring and releasing locks in a multi‑language environment.

GoMessage Queuejava
0 likes · 10 min read
tldb Distributed Lock: Usage Guide for Go and Java
FunTester
FunTester
Oct 24, 2024 · Backend Development

Using gopkg.in/yaml.v3 for YAML Parsing and Generation in Go

This article introduces the YAML format, outlines its syntax rules, and demonstrates how the Go library gopkg.in/yaml.v3 can be used for parsing and generating YAML files, including basic examples, advanced struct mapping, and a summary of its key advantages for backend development.

Goparsingyaml
0 likes · 9 min read
Using gopkg.in/yaml.v3 for YAML Parsing and Generation in Go
BirdNest Tech Talk
BirdNest Tech Talk
Oct 20, 2024 · Fundamentals

Unveiling Go’s runq: Lock‑Free Queues Behind the Scheduler

This article dissects Go's runtime GPM model and the lock‑free runq data structure, detailing its fields, core operations such as runqput, runqget, runqgrab, and their atomic implementations, while also comparing local and global queues and illustrating the code paths with concrete examples.

Data StructuresGoLock-Free
0 likes · 24 min read
Unveiling Go’s runq: Lock‑Free Queues Behind the Scheduler
Java Tech Enthusiast
Java Tech Enthusiast
Oct 20, 2024 · Backend Development

Why C++ Candidates Struggle in Backend Development Jobs and How to Improve

C++ graduates often fail backend interviews at major internet firms because those companies favor Java or Go and expect experience with databases, caches, and message queues, so candidates should either acquire those backend skills, switch to the dominant languages, or target C++‑friendly domains such as embedded, AV, gaming, or client‑side networking.

C++Gobackend development
0 likes · 8 min read
Why C++ Candidates Struggle in Backend Development Jobs and How to Improve
MaGe Linux Operations
MaGe Linux Operations
Oct 16, 2024 · Information Security

How to Build a Unified Enterprise SSO System with Go and Vue

This guide explains the challenges of multiple logins in enterprises, introduces Single Sign‑On concepts and protocols, and provides a step‑by‑step deployment of an open‑source Go‑Vue SSO solution, covering authentication methods, supported protocols, security features, and Docker‑based installation.

DockerGoSSO
0 likes · 8 min read
How to Build a Unified Enterprise SSO System with Go and Vue
IT Services Circle
IT Services Circle
Oct 15, 2024 · Backend Development

Why C++ Graduates Struggle to Land Backend Development Jobs in Internet Companies and How to Improve Their Prospects

The article analyzes why C++‑focused graduates receive few backend interview opportunities at major internet firms, highlights the mismatch between C++ skill sets and common backend components, and offers practical advice on switching languages or augmenting projects to better align with industry demands.

C++DatabaseGo
0 likes · 10 min read
Why C++ Graduates Struggle to Land Backend Development Jobs in Internet Companies and How to Improve Their Prospects
FunTester
FunTester
Oct 15, 2024 · Backend Development

Generate Realistic Test Data in Go with the GoFakeIt Library

This article introduces GoFakeIt, a lightweight Go library for quickly generating diverse fake data—personal, address, financial, network, and more—explains its key features, shows how to install it via go get, and provides practical code examples for each data type.

Data GenerationFake DataGo
0 likes · 13 min read
Generate Realistic Test Data in Go with the GoFakeIt Library
BirdNest Tech Talk
BirdNest Tech Talk
Oct 14, 2024 · Backend Development

Why Go’s lock‑free PoolDequeue outperforms channels by 10×

This article examines Go’s internal lock‑free single‑producer multi‑consumer queues—PoolDequeue and its dynamic extension PoolChain—detailing their design, atomic operations, and benchmark comparisons that show they can be up to ten times faster than standard channels in a producer‑consumer workload.

GoLock-FreeQueue
0 likes · 13 min read
Why Go’s lock‑free PoolDequeue outperforms channels by 10×
FunTester
FunTester
Oct 14, 2024 · Backend Development

Mastering Go Benchmarking: A Practical Guide to Performance Testing

This article introduces Go's benchmarking framework, explains its purpose and best practices, provides step‑by‑step code examples for measuring string concatenation performance, shows how to run benchmarks from the command line, and teaches how to interpret the detailed test reports.

BenchmarkingGoPerformance Testing
0 likes · 11 min read
Mastering Go Benchmarking: A Practical Guide to Performance Testing
Rare Earth Juejin Tech Community
Rare Earth Juejin Tech Community
Oct 13, 2024 · Backend Development

ByteDance Service Framework: Compile‑Time Merged Microservices – Practices, Challenges, and Solutions

This article presents ByteDance's compile‑time microservice merging technique, describing its background, performance benefits, technical challenges such as dependency isolation and call conversion, the implemented solutions, selection criteria, large‑scale impact, and future directions for service architecture governance.

Gocompile-time mergingdependency isolation
0 likes · 14 min read
ByteDance Service Framework: Compile‑Time Merged Microservices – Practices, Challenges, and Solutions
Alibaba Cloud Developer
Alibaba Cloud Developer
Oct 11, 2024 · Backend Development

Avoid Common Go Middleware Pitfalls: Lessons from Alibaba’s Experience

This article shares the most frequent Go middleware pitfalls encountered at Alibaba, explains their root causes—from uneven request distribution and CPU leaks to transaction mishandling and SQL incompatibilities—and provides concrete solutions and best‑practice recommendations to help developers avoid repeating these errors.

GoMiddlewareSQL
0 likes · 20 min read
Avoid Common Go Middleware Pitfalls: Lessons from Alibaba’s Experience
FunTester
FunTester
Oct 10, 2024 · Backend Development

Unlocking Go's Power: How Goja Brings JavaScript to Your Go Apps

This article explores Goja, a pure‑Go JavaScript engine, detailing its features, integration with the K6 load‑testing tool, and practical code examples for embedding scripts, passing values, handling structs, invoking Go functions, error handling, and VM pooling to achieve high performance in Go applications.

EmbeddingGoGoja
0 likes · 14 min read
Unlocking Go's Power: How Goja Brings JavaScript to Your Go Apps
BirdNest Tech Talk
BirdNest Tech Talk
Oct 9, 2024 · Fundamentals

Unlocking the Power of Bit Manipulation: Real‑World Uses and Go Tips

This article explains why bit manipulation is a staple technique in computer science, detailing performance gains, state flag encoding, mask operations, data compression, cryptography, image processing, hash structures, binary counting, and algorithm design, with practical Go examples.

GoHashingbit manipulation
0 likes · 3 min read
Unlocking the Power of Bit Manipulation: Real‑World Uses and Go Tips
ByteDance Cloud Native
ByteDance Cloud Native
Oct 8, 2024 · Backend Development

How Merge Compilation Supercharges ByteDance’s Microservices: Performance Gains and Technical Challenges

This article explains ByteDance’s merge‑compilation technique that combines multiple microservices into a single binary at build time, detailing its performance benefits, architectural trade‑offs, dependency isolation, call conversion, version management, real‑world case studies, and future roadmap for large‑scale service optimization.

GoKitexMicroservices
0 likes · 15 min read
How Merge Compilation Supercharges ByteDance’s Microservices: Performance Gains and Technical Challenges
BirdNest Tech Talk
BirdNest Tech Talk
Oct 4, 2024 · Fundamentals

Weak Pointers Across Go, Rust, Java, and C#: Design, Implementation, and Use Cases

This article examines the concept of weak pointers and weak references in Go, Rust, Java, and C#, comparing their implementations, explaining their memory‑management semantics, presenting concrete code examples, and discussing the upcoming Go weak‑pointer proposal and practical scenarios such as caching and event handling.

C++Garbage CollectionGo
0 likes · 14 min read
Weak Pointers Across Go, Rust, Java, and C#: Design, Implementation, and Use Cases
DeWu Technology
DeWu Technology
Sep 30, 2024 · Backend Development

Automated Performance Profiling for Go Services with Conan

Conan is an automated profiling solution for Go microservices that embeds an SDK to continuously or adaptively sample CPU, memory and goroutine metrics, detects anomalies via user‑defined rules, uploads data to a Pyroscope server, and reports results through Feishu or Pyroscope, delivering sub‑5 % overhead and faster root‑cause analysis.

AutomationGoPyroscope
0 likes · 16 min read
Automated Performance Profiling for Go Services with Conan
Infra Learning Club
Infra Learning Club
Sep 27, 2024 · Cloud Native

Inside Kubelet: How Pod Admission Works

This article dissects Kubelet's Pod admission pipeline, explaining how syncLoopIteration gathers pod data, how HandlePodAdditions invokes canAdmitPod, and how six registered admit handlers—Eviction, System Allowlist, Resource Allocation, Predicate, AppArmor, and Shutdown—evaluate each pod with concrete code examples and decision logic.

Admission HandlersGoKubernetes
0 likes · 14 min read
Inside Kubelet: How Pod Admission Works
Top Architect
Top Architect
Sep 24, 2024 · Backend Development

Guide to Using tldb Distributed Locks with Go and Java

This article introduces tldb's distributed lock mechanism, explains lock, trylock, and unlock methods, provides Go and Java client examples, and also includes promotional information about ChatGPT services and a developer community for developers.

GoMQjava
0 likes · 10 min read
Guide to Using tldb Distributed Locks with Go and Java
Rare Earth Juejin Tech Community
Rare Earth Juejin Tech Community
Sep 22, 2024 · Backend Development

Designing a High‑Performance bytes.Buffer Pool for GWS in Go

This article explores the internal structure and growth mechanism of Go's bytes.Buffer, demonstrates how the GWS library replaces gorilla/websocket, and presents a high‑performance bytes.Buffer pool implementation using sync.Pool with power‑of‑two sizing to reduce allocations and improve concurrency in backend services.

GoMemory poolbytes.Buffer
0 likes · 25 min read
Designing a High‑Performance bytes.Buffer Pool for GWS in Go
Architecture Development Notes
Architecture Development Notes
Sep 20, 2024 · Fundamentals

Go vs Rust: Which Language Wins for Your Next Project?

An in‑depth guide compares Go and Rust across memory management, learning curve, concurrency, ecosystem, performance, developer experience, and real‑world use cases, helping developers decide which language best fits cloud‑native services, system programming, web development, game development, or DevOps tools.

GoLanguage comparisonRust
0 likes · 18 min read
Go vs Rust: Which Language Wins for Your Next Project?
Go Development Architecture Practice
Go Development Architecture Practice
Sep 18, 2024 · Backend Development

Boost Your Go Skills: 17 Must‑Try Open‑Source Projects & Libraries

This article curates a collection of essential Go open‑source projects—including core libraries like Gin, go‑zero, and GORM, middleware such as etcd and Kubernetes, learning roadmaps, and useful resources—providing brief descriptions, star counts, and direct GitHub URLs to help developers deepen their Go expertise.

GoLibrariesOpen Source
0 likes · 5 min read
Boost Your Go Skills: 17 Must‑Try Open‑Source Projects & Libraries
BirdNest Tech Talk
BirdNest Tech Talk
Sep 12, 2024 · Fundamentals

Mastering eBPF with CO-RE: From Basics to Go Implementation

This article introduces eBPF fundamentals, explains the Compile‑Once‑Run‑Everywhere (CO‑RE) approach, compares it with traditional eBPF, outlines best practices, and walks through a complete Go‑based example using the Cilium/eBPF library and the eunomia‑bpf runtime.

CO-REGoLinux
0 likes · 14 min read
Mastering eBPF with CO-RE: From Basics to Go Implementation
BirdNest Tech Talk
BirdNest Tech Talk
Sep 11, 2024 · Cloud Native

How to Build a Complete eBPF Development Environment on Ubuntu

This guide walks through the purpose, advantages, required Linux packages, Go libraries, exact installation commands, and version details needed to set up a functional eBPF development environment on an Ubuntu system, while explaining each step’s rationale.

Cloud NativeGoLinux
0 likes · 10 min read
How to Build a Complete eBPF Development Environment on Ubuntu
Tencent Cloud Developer
Tencent Cloud Developer
Sep 10, 2024 · Fundamentals

Why Does This Go Code Block? Uncovering Channel and Select Pitfalls

This article analyzes a Go program that deadlocks due to misuse of unbuffered channels and select, explains the underlying behavior of channels, blocking conditions, and select semantics, and provides a simple fix by buffering the stop channel while also covering Go's CSP roots and best‑practice guidelines.

DeadlockGoSELECT
0 likes · 20 min read
Why Does This Go Code Block? Uncovering Channel and Select Pitfalls
BirdNest Tech Talk
BirdNest Tech Talk
Sep 9, 2024 · Backend Development

Unlock Advanced Network Diagnostics in Go with Mule: UDP & ICMP Made Easy

Mule is a Go library that lets developers craft custom UDP packets, capture ICMP unreachable responses, and perform low‑level network diagnostics such as port scanning, topology mapping, and security testing, offering fine‑grained control through raw socket operations and a net.Conn‑compatible API.

GoICMPLibrary
0 likes · 7 min read
Unlock Advanced Network Diagnostics in Go with Mule: UDP & ICMP Made Easy
php Courses
php Courses
Sep 9, 2024 · Backend Development

Building GraphQL Services with Go: Course Overview

This course teaches developers with basic Go knowledge how to design and implement GraphQL servers, covering core GraphQL concepts, Go integration, practical examples, CI/CD deployment, and tools like gqlgen and GraphQL Playground to create modern, flexible APIs.

APIGoGraphQL
0 likes · 2 min read
Building GraphQL Services with Go: Course Overview
Linux Kernel Journey
Linux Kernel Journey
Sep 7, 2024 · Operations

Building and Running an eBPF Application – Part 1

This article walks through creating a first eBPF program using C and Go on Ubuntu 22.04, covering required dependencies, kernel‑space vs user‑space concepts, event selection, BPF map definition, and a tracepoint function that measures per‑process CPU time.

BPF mapsC++Go
0 likes · 11 min read
Building and Running an eBPF Application – Part 1
Ops Development & AI Practice
Ops Development & AI Practice
Sep 6, 2024 · Backend Development

How to Split Large Files on Windows with a Simple Go Tool

This guide explains how to create a cross‑platform Go command‑line utility that efficiently splits multi‑gigabyte files on Windows into user‑defined chunk sizes, covering the rationale for using Go, core implementation steps, full source code, and practical usage instructions.

File SplittingGoWindows
0 likes · 7 min read
How to Split Large Files on Windows with a Simple Go Tool