Implement simple endpoint slice batching

This commit is contained in:
Maciej Borsz
2020-03-02 21:00:06 +01:00
parent b6b494b448
commit 49b11b5431
11 changed files with 426 additions and 10 deletions

View File

@@ -312,6 +312,11 @@ type EndpointSliceControllerConfiguration struct {
// added to an EndpointSlice. More endpoints per slice will result in fewer
// and larger endpoint slices, but larger resources.
MaxEndpointsPerSlice int32
// EndpointUpdatesBatchPeriod describes the length of endpoint updates batching period.
// Processing of pod changes will be delayed by this duration to join them with potential
// upcoming updates and reduce the overall number of endpoints updates.
EndpointUpdatesBatchPeriod metav1.Duration
}
// GarbageCollectorControllerConfiguration contains elements describing GarbageCollectorController.

View File

@@ -143,6 +143,7 @@ func (in *EndpointControllerConfiguration) DeepCopy() *EndpointControllerConfigu
// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (in *EndpointSliceControllerConfiguration) DeepCopyInto(out *EndpointSliceControllerConfiguration) {
*out = *in
out.EndpointUpdatesBatchPeriod = in.EndpointUpdatesBatchPeriod
return
}