• James Ravn's avatar
    Use endpoints informer for the endpoint controller · 9fc5a547
    James Ravn authored
    This substantially reduces the number of API calls made by the endpoint
    controller. Currently the controller makes an API call per endpoint for
    each service that is synced. When the 30s resync is triggered, this
    results in an API call for every single endpoint in the cluster. This
    quickly exceeds the default qps/burst limit of 20/30 even in small
    clusters, leading to delays in endpoint updates.
    
    This change modifies the controller to use the endpoint informer cache
    for all endpoint GETs. This means we only make API calls for changes in
    endpoints. As a result, qps only depends on the pod activity in the
    cluster, rather than the number of services.
    9fc5a547
Name
Last commit
Last update
..
bootstrap Loading commit data...
certificates Loading commit data...
cloud Loading commit data...
cronjob Loading commit data...
daemon Loading commit data...
deployment Loading commit data...
disruption Loading commit data...
endpoint Loading commit data...
garbagecollector Loading commit data...
history Loading commit data...
job Loading commit data...
namespace Loading commit data...
node Loading commit data...
podautoscaler Loading commit data...
podgc Loading commit data...
replicaset Loading commit data...
replication Loading commit data...
resourcequota Loading commit data...
route Loading commit data...
service Loading commit data...
serviceaccount Loading commit data...
statefulset Loading commit data...
ttl Loading commit data...
volume Loading commit data...
.import-restrictions Loading commit data...
BUILD Loading commit data...
OWNERS Loading commit data...
client_builder.go Loading commit data...
controller_ref_manager.go Loading commit data...
controller_ref_manager_test.go Loading commit data...
controller_utils.go Loading commit data...
controller_utils_test.go Loading commit data...
doc.go Loading commit data...
lookup_cache.go Loading commit data...