REST(Micro)服务器,可以在几分钟内生成一个API。

efesto的Python项目详细描述


efesto

PypiTravis buildCodacy gradeCodacy grade

一个micro rest api几乎可以与其他api一起使用 微服务。

它通过提供一种简单的方法来构建后端并公开它来启动您。 efesto使用postgresql和jwts进行身份验证。

efesto遵循unix的一个原则,即做一件事并且做得好,留给您 自由选择其他组件(身份验证、缓存、速率限制, 负载均衡器)。

安装

可能在虚拟环境中安装efesto:

pip install efesto

创建PostgreSQL数据库并导出数据库URL:

exportdb_url=postgres://postgres:postgres@localhost:5432/efesto

导出JWT密钥:

exportjwt_secret=secret

填充数据库:

efesto quickstart

创建管理员:

efesto create_user tofu --superuser

现在您可以使用uwsgi或gunicorn启动efesto:

gunicorn "efesto.App:App.run()"

efesto现在应该在运行了,让我们确保它是。用这个秘密创建一个jwt 您已经配置。efesto附带了一个助手:

efesto token tofu 1000

使用令牌发送请求:

curl http://localhost:8000/users -H "Authorization: Bearer token"

成功!Efesto运行良好。阅读全文 documentation <http://efesto.readthedocs.io>了解更多信息

性能

在一个小的数字海洋上,efesto每秒大约执行200个请求。 droplet,用于包含jwt身份验证、获取数据和 打印出json。

您已经看到10万个请求基准,但不要被愚弄: 作者的大多数基准都是为了使他们的包达到最高 不能反映真实情况。

Efesto没有达到最大限度,可以做很多事情来改进。 它的表现。

作者的注释

  • efesto并不是所有问题的解决方案。会很好的 作为一个原型和早期的后端,从长远来看(见下文)就不那么重要了。

  • Efesto缺乏一些战略特性,我只能把有限的数量 时间进入埃弗斯托。如果你想完成一些功能而不能贡献 你自己,我可以被录用。

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

推荐PyPI第三方库


热门话题
java在jframe中模糊的背景上创建一个透明的矩形   java和super之间有区别。getX()和简单的x?   使用ant的java删除eclipse项目   java找不到。txt文件?   多线程Java wait()notify()   带按钮的java透明控件   java Android Studio 3无法构建我的项目   性能最佳(最快且节省内存)的Java收集/数据结构,可同时插入和删除项   spring+hibernate集成中的java ClassNotFoundException   java如何在Android上建立异步URL连接?   java当我选择contacts选项卡时,选项卡栏消失了   java根据数据库中的日期获取结果,不考虑时间   java如何访问WebChromeClient中的方法?   java如何在安卓中使用两行列表项?   spring Swagger Java日期格式验证引发异常