gRPC gRPC service timeout setting

1. gRPC service timeout setting The default request timeout of gRPC is very long. When you do not set the request timeout, all running requests will occupy a lot of resources and may Running for a long time will lead to excessive service resource consumption, making subsequent request responses too slow, and even causing the […]

gRPC memory horse research and killing 3

Foreword Two weeks ago, I saw the “Memory Horse’s Offensive and Defense Game Journey – gRPC Memory Horse” released by the M01N Team public account. The article introduced how gRPC memory horse is injected into and executes commands. However, the original article only gave a demo of the shooting range. , the poc of using […]

gRPC memory horse research and detection

Foreword Two weeks ago, I saw the “Memory Horse’s Offensive and Defense Game Journey – gRPC Memory Horse” released by the M01N Team public account. The article introduced how gRPC memory horse is injected into and executes commands. However, the original article only gave a demo of the shooting range. , the poc of using […]

golang project component grpc-gateway-yaml defines http rules and customizes gateway routing

YAML defines http rules and custom implementation of gateway routing Defining http rules in proto is always troublesome, because the proto file still defines messages, and the grpc interface is better. There is a better way to configure http rules. We can use yaml files to define http rules for the interface. At the same […]

[Installation] grpc source code compilation and installation (Linux)

1. Compilation environment description 1. grpc version: V1.58.0 2. gcc version: gcc7 or above (currently using gcc version 7.5.0 (Ubuntu 7.5.0-3ubuntu1~18.04)) 3. cmake version: 3.8 or above (currently using cmake version 3.19.6) 4. Operating system version: Ubuntu16.04 5. apt source: Alibaba Cloud 2. Compilation environment preparation Note: Since Ubuntu 16.04 comes with its own compilation […]

Binlog printing principle in gRPC

Principle of Binlog printing in gRPC gRPC supports outputting request call parameters, header and other information to a file in binary form Use The dependency of binlog is in grpc-services, so this dependency is required Specified when creating the Channel BinaryLog binaryLog = BinaryLogs.createBinaryLog(new TempFileSink(), “*”); this.channel = ManagedChannelBuilder.forAddress(host, port) .usePlaintext() .setBinaryLog(binaryLog) .build(); When creating, […]

Microservice Development Manual GRPC

GRPC is a high-performance, universal open source RPC framework developed based on the HTTP/2 protocol standard and Protobuf serialization protocol, and supports many development languages. Article directory 1 Introduction 1.1 http2 1.1.1 Binary transmission 1.1.2 Header compression 1.1.3 Multiplexing 1.1.4 Server push 1.2 Protobuf 1.2.1 Advantages 1.2.2 Disadvantages 1.2.3 Comparison with other serialization methods 2 […]

SpringBoot integrates high-performance microservice framework gRPC

As a mainstream microservice framework, Spring Boot has a mature community ecosystem. The market is widely used. For your convenience, we have compiled a series of introductory manuals for quick integration of common middleware based on spring boot, involving common open source components such as RPC, cache, message queue, sub-library and sub-table, registration center, distributed […]