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.
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.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-08-12 UTC."],[[["\u003cp\u003eThe latest version of the Google.Cloud.Bigtable.V2.RateLimitInfo API is 3.17.0.\u003c/p\u003e\n"],["\u003cp\u003eThe RateLimitInfo class provides information on how clients should adjust their load to Bigtable and is part of the Google Bigtable v2 API.\u003c/p\u003e\n"],["\u003cp\u003eRateLimitInfo includes a Factor property, of type double, that is used by clients to calculate load adjustments over time.\u003c/p\u003e\n"],["\u003cp\u003eRateLimitInfo includes a Period property, of type Duration, that indicates how long clients should wait between rate adjustments.\u003c/p\u003e\n"],["\u003cp\u003eThe RateLimitInfo class implements the IMessage, IEquatable, IDeepCloneable, and IBufferMessage interfaces, and also inherits from object.\u003c/p\u003e\n"]]],[],null,["# Google Bigtable v2 API - Class RateLimitInfo (3.23.0)\n\nVersion latestkeyboard_arrow_down\n\n- [3.23.0 (latest)](/dotnet/docs/reference/Google.Cloud.Bigtable.V2/latest/Google.Cloud.Bigtable.V2.RateLimitInfo)\n- [3.22.0](/dotnet/docs/reference/Google.Cloud.Bigtable.V2/3.22.0/Google.Cloud.Bigtable.V2.RateLimitInfo)\n- [3.21.0](/dotnet/docs/reference/Google.Cloud.Bigtable.V2/3.21.0/Google.Cloud.Bigtable.V2.RateLimitInfo)\n- [3.20.0](/dotnet/docs/reference/Google.Cloud.Bigtable.V2/3.20.0/Google.Cloud.Bigtable.V2.RateLimitInfo)\n- [3.19.0](/dotnet/docs/reference/Google.Cloud.Bigtable.V2/3.19.0/Google.Cloud.Bigtable.V2.RateLimitInfo)\n- [3.18.0](/dotnet/docs/reference/Google.Cloud.Bigtable.V2/3.18.0/Google.Cloud.Bigtable.V2.RateLimitInfo)\n- [3.17.0](/dotnet/docs/reference/Google.Cloud.Bigtable.V2/3.17.0/Google.Cloud.Bigtable.V2.RateLimitInfo)\n- [3.16.0](/dotnet/docs/reference/Google.Cloud.Bigtable.V2/3.16.0/Google.Cloud.Bigtable.V2.RateLimitInfo)\n- [3.15.0](/dotnet/docs/reference/Google.Cloud.Bigtable.V2/3.15.0/Google.Cloud.Bigtable.V2.RateLimitInfo)\n- [3.14.0](/dotnet/docs/reference/Google.Cloud.Bigtable.V2/3.14.0/Google.Cloud.Bigtable.V2.RateLimitInfo)\n- [3.13.0](/dotnet/docs/reference/Google.Cloud.Bigtable.V2/3.13.0/Google.Cloud.Bigtable.V2.RateLimitInfo)\n- [3.12.0](/dotnet/docs/reference/Google.Cloud.Bigtable.V2/3.12.0/Google.Cloud.Bigtable.V2.RateLimitInfo)\n- [3.11.0](/dotnet/docs/reference/Google.Cloud.Bigtable.V2/3.11.0/Google.Cloud.Bigtable.V2.RateLimitInfo)\n- [3.10.0](/dotnet/docs/reference/Google.Cloud.Bigtable.V2/3.10.0/Google.Cloud.Bigtable.V2.RateLimitInfo)\n- [3.9.0](/dotnet/docs/reference/Google.Cloud.Bigtable.V2/3.9.0/Google.Cloud.Bigtable.V2.RateLimitInfo)\n- [3.8.0](/dotnet/docs/reference/Google.Cloud.Bigtable.V2/3.8.0/Google.Cloud.Bigtable.V2.RateLimitInfo)\n- [3.7.0](/dotnet/docs/reference/Google.Cloud.Bigtable.V2/3.7.0/Google.Cloud.Bigtable.V2.RateLimitInfo)\n- [3.6.0](/dotnet/docs/reference/Google.Cloud.Bigtable.V2/3.6.0/Google.Cloud.Bigtable.V2.RateLimitInfo)\n- [3.5.0](/dotnet/docs/reference/Google.Cloud.Bigtable.V2/3.5.0/Google.Cloud.Bigtable.V2.RateLimitInfo)\n- [3.4.0](/dotnet/docs/reference/Google.Cloud.Bigtable.V2/3.4.0/Google.Cloud.Bigtable.V2.RateLimitInfo)\n- [3.3.0](/dotnet/docs/reference/Google.Cloud.Bigtable.V2/3.3.0/Google.Cloud.Bigtable.V2.RateLimitInfo)\n- [3.2.0](/dotnet/docs/reference/Google.Cloud.Bigtable.V2/3.2.0/Google.Cloud.Bigtable.V2.RateLimitInfo)\n- [3.1.0](/dotnet/docs/reference/Google.Cloud.Bigtable.V2/3.1.0/Google.Cloud.Bigtable.V2.RateLimitInfo)\n- [3.0.0](/dotnet/docs/reference/Google.Cloud.Bigtable.V2/3.0.0/Google.Cloud.Bigtable.V2.RateLimitInfo)\n- [2.6.0](/dotnet/docs/reference/Google.Cloud.Bigtable.V2/2.6.0/Google.Cloud.Bigtable.V2.RateLimitInfo)\n- [2.5.0](/dotnet/docs/reference/Google.Cloud.Bigtable.V2/2.5.0/Google.Cloud.Bigtable.V2.RateLimitInfo)\n- [2.4.0](/dotnet/docs/reference/Google.Cloud.Bigtable.V2/2.4.0/Google.Cloud.Bigtable.V2.RateLimitInfo)\n- [2.3.0](/dotnet/docs/reference/Google.Cloud.Bigtable.V2/2.3.0/Google.Cloud.Bigtable.V2.RateLimitInfo)\n- [2.2.0](/dotnet/docs/reference/Google.Cloud.Bigtable.V2/2.2.0/Google.Cloud.Bigtable.V2.RateLimitInfo) \n\n public sealed class RateLimitInfo : IMessage\u003cRateLimitInfo\u003e, IEquatable\u003cRateLimitInfo\u003e, IDeepCloneable\u003cRateLimitInfo\u003e, IBufferMessage, IMessage\n\nReference documentation and code samples for the Google Bigtable v2 API class RateLimitInfo.\n\nInformation about how client should adjust the load to Bigtable. \n\nInheritance\n-----------\n\n[object](https://learn.microsoft.com/dotnet/api/system.object) \\\u003e RateLimitInfo \n\nImplements\n----------\n\n[IMessage](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IMessage-1.html)[RateLimitInfo](/dotnet/docs/reference/Google.Cloud.Bigtable.V2/latest/Google.Cloud.Bigtable.V2.RateLimitInfo), [IEquatable](https://learn.microsoft.com/dotnet/api/system.iequatable-1)[RateLimitInfo](/dotnet/docs/reference/Google.Cloud.Bigtable.V2/latest/Google.Cloud.Bigtable.V2.RateLimitInfo), [IDeepCloneable](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IDeepCloneable-1.html)[RateLimitInfo](/dotnet/docs/reference/Google.Cloud.Bigtable.V2/latest/Google.Cloud.Bigtable.V2.RateLimitInfo), [IBufferMessage](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IBufferMessage.html), [IMessage](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IMessage.html) \n\nInherited Members\n-----------------\n\n[object.GetHashCode()](https://learn.microsoft.com/dotnet/api/system.object.gethashcode) \n[object.GetType()](https://learn.microsoft.com/dotnet/api/system.object.gettype) \n[object.ToString()](https://learn.microsoft.com/dotnet/api/system.object.tostring)\n\nNamespace\n---------\n\n[Google.Cloud.Bigtable.V2](/dotnet/docs/reference/Google.Cloud.Bigtable.V2/latest/Google.Cloud.Bigtable.V2)\n\nAssembly\n--------\n\nGoogle.Cloud.Bigtable.V2.dll\n\nConstructors\n------------\n\n### RateLimitInfo()\n\n public RateLimitInfo()\n\n### RateLimitInfo(RateLimitInfo)\n\n public RateLimitInfo(RateLimitInfo other)\n\nProperties\n----------\n\n### Factor\n\n public double Factor { get; set; }\n\nIf it has been at least one `period` since the last load adjustment, the\nclient should multiply the current load by this value to get the new target\nload. For example, if the current load is 100 and `factor` is 0.8, the new\ntarget load should be 80. After adjusting, the client should ignore\n`factor` until another `period` has passed.\n\nThe client can measure its load using any unit that's comparable over time.\nFor example, QPS can be used as long as each request involves a similar\namount of work.\n\n### Period\n\n public Duration Period { get; set; }\n\nTime that clients should wait before adjusting the target rate again.\nIf clients adjust rate too frequently, the impact of the previous\nadjustment may not have been taken into account and may\nover-throttle or under-throttle. If clients adjust rate too slowly, they\nwill not be responsive to load changes on server side, and may\nover-throttle or under-throttle."]]