Package io.grpc.rls
package io.grpc.rls
-
ClassDescriptionImplementation of
Throttlerthat keeps track of recent history (the duration of which is specified to the constructor) and throttles requests at the client side based on the number of requests that the backend has accepted and the total number of requests generated.Builder forAdaptiveThrottler.Holds the data for each slot (amount and end timestamp).A CachingRlsLbClient is a core implementation of RLS loadbalancer supports dynamic request routing by fetching the decision from route lookup server.When anyCachingRlsLbClient.CacheEntryis evicted fromLruCache, it performsCachingRlsLbClient.CacheEntry.cleanup()after originalLruCache.EvictionListeneris finished.Implementation ofCachingRlsLbClient.CacheEntrycontains error.A Builder forCachingRlsLbClient.Viewer class for cachedRlsProtoData.RouteLookupResponseand associatedLbPolicyConfiguration.ChildPolicyWrapper.Common cache entry data forCachingRlsLbClient.RlsAsyncLruCache.A Throttler never throttles.A pending cache entry when the async RouteLookup RPC is still on the fly.Implementation ofLinkedHashLruCachefor RLS.Factory to createLoadBalancer.ResolvedAddressesfrom child load-balancers.A delegatingLoadBalancer.Helperfor the child load blanacer.Configuration for RLS load balancing policy.Listener for child lb status change events.ChildLoadBalancingPolicy is an elected child policy to delegate requests.ChildPolicyWrapper is a wrapper class for child load balancing policy with associated helper / utility classes to manage the child policy.Exception thrown when attempting to parse child policy encountered parsing issue.Factory forLbPolicyConfiguration.ChildPolicyWrapper.LinkedHashLruCache<K,V> A LinkedHashLruCache implements least recently used caching where it supports access order lru cache eviction while allowing entry level expiration time.LruCache<K,V> An LruCache is a cache with least recently used eviction.A Listener notifies cache eviction events.Type of cache eviction.A factory to createLoadBalancer.ResolvedAddresses.Implementation ofLoadBalancerbacked by route lookup service.ProvidesCachingRlsLbClient.Builderwith default settings.The provider for the "rls_experimental" balancing policy.RlsProtoConverters is a collection ofConverterbetween RouteLookupService proto / json messages to internal representation inRlsProtoData.RouteLookupConfigConverter converts between json map toRlsProtoData.RouteLookupConfig.RouteLookupRequestConverter converts betweenRouteLookupRequestandRlsProtoData.RouteLookupRequest.RouteLookupResponseConverter converts betweenRouteLookupResponseandRlsProtoData.RouteLookupResponse.RlsProtoData is a collection of internal representation of RouteLookupService proto messages.GrpcKeyBuilder is a configuration to construct headers consumed by route lookup service.Name represents a method for a given service.NameMatcher extract a key based on a given name (e.g.A config object for gRPC RouteLookupService.A request object sent to route lookup service.A response from route lookup service.A RlsRequestFactory createsRlsProtoData.RouteLookupRequestusing key builder map fromRlsProtoData.RouteLookupConfig.SubchannelStateManager managesConnectivityStateof child subchannels.Implementation ofSubchannelStateManager.A strategy for deciding when to throttle requests at the client.