人类的DNS缓存

velocit的Python项目详细描述


velocity

Velocity是Python的一个优雅的DNS缓存库。它拦截所有的DNS/协议解析调用并缓存它们。 就这样,网络连接的所有功能都会得到性能提升。在

喜欢这个项目吗?Buy me a coffee.

文件

安装

建议安装velocity的方法是使用pip,如下所示:

pip install velocity

入门

速度只需导入即可激活。 例如,以下程序将在第一个请求之后开始使用缓存的DNS响应。在

^{pr2}$

Important: If you are using threads, consider caching the hostnames manually to prevent the database getting affected from race conditions.

管理本地缓存

缓存可以存储在本地。以下方法都不返回任何值或接受参数,只需随意调用即可。在

importvelocityvelocity.flush_db()# deletes the local cachevelocity.save_db()# saves the in-memory cache locallyvelocity.load_db()# loads the local cache into memory

手动缓存主机名

主机名可以手动缓存,如下所示:

importvelocityvelocity.cache(hostname)

Note: IPv6 address are mapped to IPv4 addresses by default, which shouldn't be a problem. To avoid this behaviour and use IPv6 address instead, add an reachable port number as velocity.cache(hostname, port)

访问数据库

内存缓存数据库可以用它们各自的变量名进行访问。在

  • velocity.dns_cache:包含{主机名:ip}对
  • velocity.addr_cache:包含{主机名:getaddrinfo_对象}对

贡献和许可证

随时报告您遇到的任何bug,请求特性,给出建议并修复bug。在

不将velocity作为程序的Pull请求将不被接受。例如,错误修复,添加.gitignore文件, pep8样式代码结构等

在GPLv3下获得许可,请参见LICENSE了解更多信息。在

喜欢这个项目吗?

你可以通过留下提示来支持开发者。在

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

推荐PyPI第三方库


热门话题
使用多个参数的枚举   从Oracle到Redis的java复制表   java如何保护tomcat服务器中的db用户名和密码。xml   java如何使用注册密钥保护移动应用程序?   java在什么情况下超类不应该是抽象的?   java Backspace键在macOS上的Scala REPL中不起作用   arduino Java+Uno+RFID:调用方法读取Java中的RFID   带有where语句中集合的java JPA查询   java如何向基于Tyrus注释的客户端添加请求头   java对我的二进制搜索算法的反馈   java重新访问数据库时文件的内容不正确   用户在字符串中输入值后退出While循环(Java)   java如何在Maven中的多个项目之间共享项目依赖关系?   java Close从未在数据库上被明确调用   在java中从文件读入布尔矩阵   Java:如何使用父节点将XML流拆分为小型XML文档。VTDXML