You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+27-2Lines changed: 27 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -41,8 +41,11 @@ To configure the resolver, modify the values under the `environment` section of
41
41
2.`useTls`: Specify whether gRPC connection to ledger should use secure or insecure pulls. Default is `true` since gRPC uses HTTP/2 with TLS as the transport mechanism.
42
42
3.`timeout`: Timeout (in seconds) to wait for before any ledger requests are considered to have time out.
43
43
2.**`TESTNET_ENDPOINT`** : Testnet Network endpoint as string with the following format" `<networks>,<useTls>,<timeout>`. Example: `grpc.cheqd.network:443,true,5s`
44
-
3.**`RESOLVER_LISTENER`**`: A string with address and port where the resolver listens for requests from clients.
45
-
4.**`LOG_LEVEL`**: `debug`/`warn`/`info`/`error` - to define the application log level.
44
+
3.**`ENABLE_FALLBACK_ENDPOINTS`** : Enable/disable fallback functionalities. Default is `false`.
45
+
4.**`MAINNET_ENDPOINT_FALLBACK`** : Fallback mainnet endpoint with the same format as `MAINNET_ENDPOINT`. Used when primary endpoint is unavailable.
46
+
5.**`TESTNET_ENDPOINT_FALLBACK`** : Fallback testnet endpoint with the same format as `TESTNET_ENDPOINT`. Used when primary endpoint is unavailable.
47
+
6.**`RESOLVER_LISTENER`**`: A string with address and port where the resolver listens for requests from clients.
48
+
7.**`LOG_LEVEL`**: `debug`/`warn`/`info`/`error` - to define the application log level.
46
49
47
50
#### gRPC Endpoints used by DID Resolver
48
51
@@ -62,6 +65,28 @@ address = "0.0.0.0:9090"
62
65
63
66
**Note**: If you're pointing a DID Resolver to your own node instance, by default `cheqd-node` instance gRPC endpoints are _not_ served up with a TLS certificate. This means the `useTls` property would need to be set to `false`, unless you're otherwise using a load balancer that provides TLS connections to the gRPC port.
64
67
68
+
#### Fallback Endpoint Feature
69
+
70
+
The DID Resolver supports automatic fallback to backup gRPC endpoints when the primary endpoints are unavailable. This feature provides high availability and fault tolerance.
71
+
72
+
**How it works:**
73
+
74
+
- When `ENABLE_FALLBACK_ENDPOINTS=true`, the resolver will automatically try fallback endpoints if the primary endpoint fails
75
+
- Health checks are performed on startup and periodically (each 60s), to ensue the most accurate endpoints status
76
+
- If a request fails on the primary endpoint between periodic health checks, it will automatically retry request on fallback endpoint
77
+
- When the primary endpoint becomes healthy again, it will be used for new requests
78
+
- The fallback feature works independently for mainnet and testnet endpoints and both fallback endpoints are required when `ENABLE_FALLBACK_ENDPOINTS` is enabled
0 commit comments