一个API框架,扩展了sanic,重点关注微服务。

insanic-framework的Python项目详细描述


Insanic

精神错乱的

Build StatusDocumentation StatusCodecov

PyPI pyversionsPyPI versionPyPI licenseBlack

疯狂是一个扩展sanic的微服务框架。它试图包含 在微服务架构中开发。为了做到这一点,需要一些堆栈,结果疯狂是 一个相当固执己见的框架。在

可以把这看作django rest框架对于django来说只是为了使用微服务(而且功能比drf少得多)。在

为什么我们需要这个

我们需要这个,因为我们需要一个框架,让我们的开发人员快速开发服务 在迁移到微服务架构时。在

如前所述,这是非常固执己见的,原因是为了减少研究时间 正在尝试选择要用于其服务的包。它列出了所有必要的模式和 引导应用程序,以缩短idea和部署之间的周期。在

特点

  • 用户和其他服务(如drf)的身份验证和授权
  • 方便的服务请求
  • 规范化错误消息格式
  • 连接管理器到redis
  • 用于提取公共路由的实用工具(在注册到api网关时会有帮助)
  • 引导监视终结点
  • 节流

文档

有关详细信息,请参阅documentation

安装

核心依赖项包括:

  • sanic-扩展sanic
  • httpx-向其他服务发出异步请求
  • PyJWT-用于身份验证
  • Redis-用于缓存和限制

要安装:

$ pip install insanic-framework

用法

对于非常基本的用法,它与Sanic基本相同:

  1. 创建一个python文件。例如应用程序副本
^{pr2}$
  1. 与…一起跑
python run.py
  1. 登录浏览器或curl
curl http://localhost:8000/

有关更多示例和用法,请参阅documentation。在

测试

疯狂的测试是用pytest和tox进行的。在

$ pytest

# with coverage
$ pytest --cov=insanic --cov-report term-missing:skip-covered

# a certain set of tests
$ pytest --pytest-args tests/test_pact.py

# tox, run for sanic > 19.12 and python >= 3.6
$ tox

发布历史

有关完整的变更日志,请参考CHANGELOG.rst。在

因为《疯狂》最初是在内部开发和发行的, 在此期间所作的更改,请参阅 CHANGELOG_LEGACY.rst。在

贡献

关于建立发展环境和 如何为精神错乱做出贡献, 请参阅CONTRIBUTING.rst指南。在

已知问题

  • 精神病患者不能与一个以上的工人一起跑步。在

Meta

根据麻省理工学院的许可证分发。有关详细信息,请参见LICENSE。在

感谢我以前的公司里所有和我一起工作的人。在

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

推荐PyPI第三方库


热门话题
javascript如何在jQuery函数中传递两个值,该函数获取数据并使用ajax发送到服务器?   java IOSDriver()不工作。相反,当我在测试用例通过时使用RemoteWebDriver()时,它正在打开远程会话   使用java对blob几何体进行二进制解码   java错误:Gradle:运行在Ubuntu 16.04上的Intellij 2017中的任务执行失败   java Lotus Notes邮件文档获取附件名称(和导出附件)   java如果库有副作用,这样可以吗?   java Javabat帮助:alarmClock   加载类时未初始化java静态变量   java限制htmlunit中的带宽   java Column_layout在安卓 tablelayout中不起作用   java在倒计时和打印循环时遇到问题   虚拟机我需要一个如何访问java虚拟机中的文件的帮助   java图像处理程序中的多线程