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如何将jaxb插件扩展与gradlejaxbplugin一起使用   java Hibernate列表<Object[]>到特定对象   java使用多态性显示arraylist的输出   java水平堆叠卡,带有一定偏移量   java错误:找不到符号方法liesInt()   java客户机/服务器文件收发中的多线程流管理   在java中可以基于访问重载方法吗?   包含空元素的java排序数组   swing Java按钮/网格布局   java BottomNavigationView getmaxitemcount   java空指针异常字符串生成器   java Xamarin升级导致“类文件版本错误52.0,应为50.0”错误   java我正在尝试打印它,而不只是对每一行进行println   Tomcat7中的java是否需要复制上下文。将xml转换为conf/Catalina/locahost以使其生效   带有注入服务的java REST端点在何处引发自定义WebServiceException?   在Java中使用GPS数据   java如何将JFreeChart ChartPanel导出到包含添加的CrosshairOverlay的图像对象?   内置Eclipse期间的Java 8堆栈溢出   java在GWT编译的JavaScript中如何表示BigDecimal