用于查询分布在全球分布式数据中心的 API 的多个实例的代理和聚合器。
项目描述
一种快速且高性能的代理和聚合器,用于查询分布在全球分布式数据中心的 API 的多个实例。
能力
CurryProxy 可以处理多个路由,以针对 API 的不同修订版或针对完全不相关的 API 使用。有关示例配置,请参阅 etc/routes.sample.yaml 。
简单的请求转发(有助于保持与托管在单个数据中心中的预 CurryProxy 版本的 API 的向后兼容性)
示例:GET https://api.example.com/v1.0/foo/bar转发到 GET https://1.api.example.com/v1.0/foo/bar
高级请求转发到多个端点
安装
pip install curryproxy会做你所期望的。
有几个额外的选项:
pip install curryproxy[tests]。这将安装运行测试所需的任何包。
pip install curryproxy[frozen]。这将安装具有显式固定依赖项的 curryproxy,由pip freeze生成。这是为了方便那些希望包提供可重现环境的人。使用的版本将是给定 Curry 版本发布时的最新工作版本。
在启动 Curry 之前,您需要提供配置文件。
注意:配置文件在 v2.x 中已更改。routes.json 和logging.conf分别变成了 routes.yaml和logging.yaml 。有关示例,请参阅示例文件。
限制
仅在多端点聚合 wiki 页面上概述的某些条件下才会将来自多个端点的响应合并在一起。
测试
测试设置为使用tox运行。
默认的tox设置为我们每个依赖项的每个已知可用版本创建环境,并在每个依赖项中运行测试。目前这相当于大约十几个环境,因此您可能希望与tox -p auto并行运行它们。
如果您不想那么彻底(也许您正在冒烟测试正在进行的工作),您可以使用tox -e py36仅针对受支持的最新版本的依赖项运行。
您可以针对特定的依赖版本进行测试,如下所示:
tox -e py36-requests2.{2,3,4,5,6,7} -p auto
tox -e py36-webob1.{2,3,4,5} -p auto
tox -e py36-grequests0.{2,3} -p auto
tox -e py36-requests.latest
tox -e lint也可用,并将运行各种 linting 检查。
路线图
对服务器端排序和分页的 OData 支持
指定时间的响应缓存
项目详情
下载文件
下载适用于您平台的文件。如果您不确定要选择哪个,请了解有关安装包的更多信息。
源分布
内置分布
curryproxy -2.1.1.tar.gz 的哈希值
| 算法 | 哈希摘要 | |
|---|---|---|
| SHA256 | f9b18607f5496dc004f80d5b4a1a538ed81202029d63a489c5b07c6926d65ef2 |
|
| MD5 | 79a66a06b1b615248d64db991fbf25e5 |
|
| 布莱克2-256 | 3e0404568f6ba991023c919302b95afdaaa2729c04a822486b3c8c87c0ed9438 |
curryproxy -2.1.1-py3-none-any.whl 的哈希值
| 算法 | 哈希摘要 | |
|---|---|---|
| SHA256 | f4d8e6a560b7c601c19c3de4d36bab6143962e39921487e0cee2cd45b3e60ff0 |
|
| MD5 | e84c1bf317982530655e230a0fa5ddaf |
|
| 布莱克2-256 | 0d59d76c3d0b68a1a3754aa46054c9adc689068d4de3b82eb062001735919488 |