funcx.sdk.utils package¶
Submodules¶
funcx.sdk.utils.throttling module¶
-
exception
funcx.sdk.utils.throttling.
MaxRequestSizeExceeded
¶
-
exception
funcx.sdk.utils.throttling.
MaxRequestsExceeded
¶
-
class
funcx.sdk.utils.throttling.
ThrottledBaseClient
(*args, **kwargs)¶ Bases:
globus_sdk.base.BaseClient
Throttled base client allows for two different types of Throttling. Note, this is ‘polite’ client side throttling, to avoid well intentioned users from mistakenly harming the funcX service, this does not prevent DOS attacks.
Request Flood Throttling: Restricts the number of requests that can be made in a given time period, and raises an exception when that has been exceeded
Request Size Throttling: Restricts the size of the payload that can be sent to the FuncX web service.
Both of these raise exceptions when the values have been exceeded. Both can be caught with ThrottlingException. Throttling can also be turned off with:
cli.throttling_enabled = False
-
DEFAULT_MAX_REQUESTS
= 20¶
-
DEFAULT_MAX_REQUEST_SIZE
= 5242880¶
-
throttle_max_requests
()¶
-
throttle_request_size
(*request_args, **request_kwargs)¶
-