Microservices
Using Node.js to Proxy HTTPS Requests to Dependent R&D Services
· β˜• 3 min read
1. Background Under a microservices architecture, the dependency relationships between services are complex. During development, multiple services often need joint debugging. There are two ways to do this: Deploy services to the online development environment, the Kubernetes cluster Use telepresence to connect local and online cluster communication, so you get a relatively stable joint debugging environment.

Gateway Service on Kubernetes: APISIX
· β˜• 6 min read
1. Comparing a Few Common Gateways Nginx, a reverse proxy with a modular design, written in C OpenResty, a web development platform built around Nginx that can parse and execute Lua scripts Kong, an application on top of OpenResty, an API gateway with API management and request proxying, using PostgreSQL for storage APISIX, which replaces Kong’s PostgreSQL with Etcd and is built on Nginx’s core libraries APISIX’s advantage lies in the API management and extensibility it provides, so the gateway no longer merely forwards traffic to services but can be configured and customized.

Etcd, Confd, and Nginx Service Discovery
· β˜• 3 min read
This post mainly explains why the service discovery feature is needed and compares several service discovery tools. It also puts service discovery with Etcd, Confd, and Nginx into practice on CentOS. 1. Service Registration and Discovery 1.1 Why Service Registration and Discovery Are Needed With the rise of microservices, a

API Rate Limiting for Backend Services
· β˜• 3 min read
1. Flow Control Caching, degradation, and rate limiting are common methods for protecting high-concurrency systems. Caching trades space for time and cuts the time spent on CPU and network calls; degradation protects the high availability of core services by delaying or refusing to handle non-core requests during peak periods; rate

Microservices Architecture
· β˜• 3 min read
1. SOA Service-Oriented Architecture (SOA) holds that a complex enterprise IT system should be divided along different, reusable granularities, organizing a group of functionally related service providers together to serve consumers. Its purpose is to solve the information silo problem caused by different IT resources within an enterprise being unable to interconnect.