com.google.bigtable.v2.RateLimitInfoOrBuilder Maven / Gradle / Ivy
/*
* Copyright 2024 Google LLC
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* https://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
// Generated by the protocol buffer compiler. DO NOT EDIT!
// source: google/bigtable/v2/bigtable.proto
// Protobuf Java Version: 3.25.2
package com.google.bigtable.v2;
public interface RateLimitInfoOrBuilder
extends
// @@protoc_insertion_point(interface_extends:google.bigtable.v2.RateLimitInfo)
com.google.protobuf.MessageOrBuilder {
/**
*
*
*
* Time that clients should wait before adjusting the target rate again.
* If clients adjust rate too frequently, the impact of the previous
* adjustment may not have been taken into account and may
* over-throttle or under-throttle. If clients adjust rate too slowly, they
* will not be responsive to load changes on server side, and may
* over-throttle or under-throttle.
*
*
* .google.protobuf.Duration period = 1;
*
* @return Whether the period field is set.
*/
boolean hasPeriod();
/**
*
*
*
* Time that clients should wait before adjusting the target rate again.
* If clients adjust rate too frequently, the impact of the previous
* adjustment may not have been taken into account and may
* over-throttle or under-throttle. If clients adjust rate too slowly, they
* will not be responsive to load changes on server side, and may
* over-throttle or under-throttle.
*
*
* .google.protobuf.Duration period = 1;
*
* @return The period.
*/
com.google.protobuf.Duration getPeriod();
/**
*
*
*
* Time that clients should wait before adjusting the target rate again.
* If clients adjust rate too frequently, the impact of the previous
* adjustment may not have been taken into account and may
* over-throttle or under-throttle. If clients adjust rate too slowly, they
* will not be responsive to load changes on server side, and may
* over-throttle or under-throttle.
*
*
* .google.protobuf.Duration period = 1;
*/
com.google.protobuf.DurationOrBuilder getPeriodOrBuilder();
/**
*
*
*
* If it has been at least one `period` since the last load adjustment, the
* client should multiply the current load by this value to get the new target
* load. For example, if the current load is 100 and `factor` is 0.8, the new
* target load should be 80. After adjusting, the client should ignore
* `factor` until another `period` has passed.
*
* The client can measure its load using any unit that's comparable over time
* For example, QPS can be used as long as each request involves a similar
* amount of work.
*
*
* double factor = 2;
*
* @return The factor.
*/
double getFactor();
}