Introduces how to use the `gemini-cli` command-line tool to analyze its own source code repository. Through a series of interactive commands, we will explore the design and implementation of `gemini-cli`. This method not only demonstrates the capabilities of AI tools but also provides developers with a new way to learn and explore.
An excerpt from my book 'Envoy Proxy Insider', covering the Event-Driven Framework and Threading Model. These are the foundational core of Envoy Proxy. Like other middleware with high-load, low-latency requirements, Envoy's design must consider load scheduling and flow control. A good scheduling design must balance throughput, response time, and resource consumption. This article primarily discusses topics related to events, scheduling, and multi-threaded coordination.
Adding a chatbot to a blog is both interesting and practical. It can answer readers' simple questions based on the blog content and the author's introduction articles. ChatBlog (chat + blog) might be an engaging and useful model for interactive technical sharing. This article documents my exploration and implementation process.
Most of the data flows in Linux, including inter-process communication, sockets, etc., are implemented through file descriptors (fd) reading and writing. When troubleshooting, if you can peek at the fd traffic, many problems can be quickly proved/falsified. This article introduces an old tool peekfd, which can accomplish this task in a certain environment.
Network quality issues such as packet loss can be discovered, quantified, and monitored using Envoy sidecar. During testing, Envoy can be used as an egress on the client side such as JMeter to monitor traffic. This article discusses one of the implementation solutions.
Like all proxy software, Envoy takes flow control seriously because CPU/memory resources are limited. But flow control is never a simple matter. It involves all the players in the data flow path. This article tries to explain the principles and synergies involved.
Debugging Envoy sidecar C++ code running in Istio mesh. It helps deep dive into the sidecar at code level. It makes us more confident when troubleshooting Istio problem or writing better EnvoyFilter or eBPF trace program. This article guides how to use VSCode and lldb to debug Envoy istio-proxy sidecar.