Comments (6)
Cronet uses the DNS client built into Cronet, so it disables the normal name resolution. Are you needing custom name resolution for Cronet?
from grpc-java.
Cronet uses the DNS client built into Cronet, so it disables the normal name resolution. Are you needing custom name resolution for Cronet?
Yes, we have a custom name resolver that uses cloudflare dns service instead Google's. It is more performant from our testing.
from grpc-java.
The custom name resolver is faster than cronet's, or 1.1.1.1 is faster than 8.8.8.8? I'd expect cronet to be using the device's configured dns server.
Is your app gRPC-only, or does it do any plain HTTP? In mixed apps, there is value in using plain cronet, as you only pay DNS lookup and connection establishment costs once.
Cronet handles TLS and is only given a URL to contact, so it isn't really possible to specify IP addresses from within gRPC. You might take a look at CronetEngine.Builder for some of the options it offers, but I'm not seeing anything off-the-top that looks powerful enough for what you need.
from grpc-java.
We see 1.1.1.1 being faster than 8.8.8.8.
In terms of communicating with our backend, our app is grpc-only.
I noticed there is a DNS option in the documentation, but I can't access it with the coronet engine builder from the grpc package io.grpc:grpc-cronet
. Is the coronet builder in io.grpc, a customized builder?
from grpc-java.
but I can't access it with the coronet engine builder from the grpc package io.grpc:grpc-cronet
What documentation? You pass a CronetEngine to the grpc builder, so you are in full control of Cronet's configuration to whatever extent that is possible.
from grpc-java.
Seems like we've answered this as much as we can. All I/O within the scope of Cronet itself. If not and we missed something, comment, and it can be reopened.
from grpc-java.
Related Issues (20)
- server awaitTermination() doesn't handle graceful shutdown for open streams HOT 6
- [xDS] NACK/ACK should be always reported even if subscribedResourceTypeUrls cannot be found HOT 1
- protobuf-maven-plugin Config Causes Protoc Execution Error on Linux Systems HOT 5
- Binder: provide a SecurityPolicy factory method that requires apps to have the same signature as the platform
- RLS cleanups
- Retry does not work with grpc-servlet in Tomcat HOT 4
- Unexpected cancellation when subsequent message in client stream exceeds max size HOT 1
- Unexpected error when server expands a compressed message to learn it is too large HOT 1
- Cardinality violations should use error code “unimplemented” HOT 3
- Client does not report expected error code for 431 HTTP status HOT 1
- CsmObservability is experimental
- grpc channel not honoring connection timeout HOT 27
- okhttp: detect transport executors with no remaining threads
- Retry throttling not being respected with default service config HOT 9
- Build breaks with Bazel 7.2.0 and bazel module grpc-java 1.62.2 HOT 1
- Unable to connect remote OPC-UA integration due to UNAVAILABLE: io exception! HOT 1
- netty-shaded bazel target overridden to target which does not have package io.grpc.netty.shaded.io.grpc.netty
- Compatibility issue with different Guava versions between gRPC and Apache Spark in a Milvus project HOT 2
- grpc-netty breaks with Netty 4.1.111.Final HOT 17
- The onReadyThreshold property cannot be configured in the application[grpc version: 1.64.0] HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from grpc-java.