一个简单的概率计数器。

probcount的Python项目详细描述


一种简单有效的概率计数器,适用于速率限制和有效计数,无需将每个动作上传到远程数据库。

用法

指令

fromprobcountimportProbCounterfromfunctoolsimportpartialpc=ProbCounter()defold_increase_function(counter_name,value):# run the real call to the DB increasing the counter# for a redis# return redis.Redis().incrby(name=counter_name, amount=value)# or a MongoDB# return (pymongo.MongoClient().database_name.collection_name.find_one_and_update({"_id": counter_name},{"$inc":{"value":value}},{"value":1}).get("value",0)+value)passdefold_get_function(counter_name):# run the real call to the DB increasing the counter# for a redis# redis.Redis().get(name=counter_name)# or a MongoDB# pymongo.MongoClient().database_name.collection_name.find_one({"_id": counter_name}, {"value": 1}).valuepasspc.create("name_of_counter",partial(old_increase_function,"name_of_counter"),partial(old_get_function,"name_of_counter"))pc.inc("name_of_counter",42.0)pc.get("name_of_counter")

支持的Python版本

python项目模板支持以下现成版本:

  • cpython 2.6、2.7、3.3、3.4、3.5、3.6、3.7
  • Pypy 1.9

作者

  • 都铎极光城

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java如何在删除后修复recyclerView中的项目重复?   java如何在Android中使用Handle而不增加内存   java(i>>>距离)是如何工作的   java如何在菜单项操作之后删除JTabbedPane的内容   springintermediatejavax。ejb。EJBException:java。Jboss应用程序中的lang.NullPointerException   Java:派生类中的方法链接   java InputListener不适用于正交摄影机和角色   java不能写这个方法吗?   java为什么Apache Kafka消费者不使用来自主题的消息?   使用scanner Java从文本文件填充二维数组   爪哇在会场内放置标记   maven合并了2个Java web应用程序   Java中注释处理的缺点是什么?   java创建在JFrame中绘制矩形和圆形的方法?   java LibGDX应用程序挂起在initializeglfw()上   唯一包含密钥但在不同字段上排序的java集   jboss在使用Infinispan中的共享文件存储时获取“java.io.IOException:不支持的协议版本22”   JavaEclipse似乎不想编译我的类的新版本。即使在(我认为)修复它之后,我也会遇到同样的错误