જો આંતરિક gRPC સેવા સીધી રીતે મેળવવી હોય, તો gRPC-Go તે માર્ગ માટે કનેક્શન વિકલ્પ આપે છે:

conn, err := grpc.NewClient(
    "dns:///rpc.internal.example:443",
    grpc.WithTransportCredentials(transportCredentials),
    grpc.WithNoProxy(),
)

grpc આયાત એ google.golang.org/grpc છે. transportCredentials એ એપ્લિકેશનનું હાલનું credentials.TransportCredentials રૂપરેખાંકન છે. err સંભાળો અને સામાન્ય ક્લાયંટ જીવનચક્ર દ્વારા conn બંધ કરો.

WithNoProxy આ ClientConn માટે પ્રોક્સી વપરાશ બંધ કરે છે. તે અન્ય ક્લાયંટ્સ અને પ્રક્રિયાના પ્રોક્સી પર્યાવરણને અબદલ રાખે છે. ગંતવ્ય એપ્લિકેશનના નેટવર્કથી સીધું પહોંચી શકાય તેવું હોવું જોઈએ.

જ્યારે WithDialer અથવા WithContextDialer કસ્ટમ કનેક્શન માર્ગ પૂરો પાડે ત્યારે આ વિકલ્પ અવગણાય છે; તે ડાયલર પોતાના રૂટિંગ નિર્ણયો ધરાવે છે. અપસ્ટ્રીમ API પ્રાયોગિક તરીકે ચિહ્નિત છે, તેથી તેને સ્થાપિત grpc-go આવૃત્તિ સામે ચકાસો.

NewClient નેટવર્ક કનેક્શન સફળ થયું તેવો પુરાવો આપ્યા વિના ક્લાયંટ ચેનલ બનાવે છે. તે પુરાવો પછીનું RPC અથવા કનેક્શન-સ્થિતિ પરિણામ આપે છે. પ્રોક્સી બાયપાસ કરવા માટે TLS બંધ કરવાની જરૂર નથી.

સંબંધિત લેખો