A flow control packages,control QPS
Project description
Flow Control
-
功能
- 这个packages可以控制间隔固定的时间一个函数或者语句的调用次数(QPS),可以设置访问次数和时间间隔,
- 访问限制 访问次数/时间间隔
-
使用方法(单进程情况下使用FlowControl 类,多进程情况下使用ProcessFlowControl类)
# encoding=utf-8 import os import threading from datetime import datetime from flow_control.controller import FlowController from flow_control.controller import ProcessFlowController from flow_control.controller import AverageFlowControl from flow_control.controller import AverageProcessFlowControl from threading import Thread def work(flowcontrol): while True: if flowcontrol.get(): print("{}--{}--{}".format(os.getpid(), threading.currentThread().ident, datetime.now())) flow_control = AverageFlowControl(num=0.5, interval=1) Thread(target=work, args=(flow_control,)).start() work(flow_control)
- 创建一个FlowControl (单进程情况下)或者 ProcessFlowControl(多进程情况下) 对象,参数为(num=访问次数,interval=时间间隔),
- 然后调用该对象的 get方法
- 如果get方法返回 True,则说明可以未达到流控限制,如果返回False则说明函数调用次数或者访问次数已经 达到流控限制,应该拒绝调用或访问
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
flow_control-2.0.0.tar.gz
(3.1 kB
view details)
Built Distribution
File details
Details for the file flow_control-2.0.0.tar.gz
.
File metadata
- Download URL: flow_control-2.0.0.tar.gz
- Upload date:
- Size: 3.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.9.13
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8031459cf49075b2587788d368012aade737b9912f731437a573c6c8542f8eb9 |
|
MD5 | 4086c2d3099152ce3f9f8e0322788376 |
|
BLAKE2b-256 | 00a1f5d6a9ccb79bd54401e59986cd019a57cffa3b7bcdbc4b511b978a742d93 |
File details
Details for the file flow_control-2.0.0-py3-none-any.whl
.
File metadata
- Download URL: flow_control-2.0.0-py3-none-any.whl
- Upload date:
- Size: 3.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.9.13
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | ad4f2dd3e8fef4442c0c21075cf63247932ea076886b5ccf914add7f7584fc98 |
|
MD5 | 6a42b0aec84543cd7913de5373de9b51 |
|
BLAKE2b-256 | a804be4a51fe9b9cb4fc44bc23d58401be2c5f0c455b6c2d3cc20c1d00532aa7 |