XWeb - 高性能异步 Web 框架。

2018-09-29 17:13:15 +08:00
 prasanta

XWeb - 高性能异步 Web 框架。

XWeb

优势

Hello World

from xweb import App

app = App()

@app.use
async def response(ctx):
    ctx.res.body = "Hello World"


if __name__ == '__main__':
    app.listen(8000)

koa.js 官方例子 xweb 版

import time

from xweb import App

app = App()


@app.use
async def logger(ctx, fn):
    await fn()
    rt = ctx['X-Response-Time']
    print(rt)


@app.use
async def response_time(ctx, fn):
    start = time.time()
    await fn()
    usage = (time.time() - start) * 1000_000
    ctx['X-Response-Time'] = f'{usage:.0f}µs'


@app.use
async def response(ctx):
    ctx.res.body = "Hello World"


if __name__ == '__main__':
    app.listen(8000)

性能

Requests/Sec:

规划(期待有兴趣的同学一起参与进来,创造全异步,高性能的 xweb 插件)

参考 koa.js 的插件开发 xweb 对应的插件,比如

Github 地址

XWeb

2082 次点击
所在节点    Python
5 条回复
bestkayle
2018-09-29 17:18:23 +08:00
大佬又出现了
hcheng
2018-10-02 09:42:39 +08:00
先前排膜拜一下大佬
xpresslink
2018-10-03 23:48:40 +08:00
谢谢楼主分享
其实光这么一个祼框架速度再高也是虚的。

计划有异步的 ORM 么?还是打算直接集成 sqlalchemy 之类的?
模板系统是打算用现成的如 jinja2 或是 mako 之类的。
还有 Session,cache 等
如果没这些基础设施光快也没用啊。

django 和 flask 之类的之所以流行主要是功能齐全,开发效率高。用 python 做 web 开发大多数都是运维项目或者管理后端之类的。要是真需速度就用 go 或 java 之类开发后端了,python 高并发下的靠谱程度还是差点儿。
prasanta
2018-10-05 22:28:23 +08:00
@xpresslink 思想源于 koa.js. 你说的这些都会以插件的形式出现。
xiubin
2018-10-27 15:14:55 +08:00
@prasanta #4 大佬书写的怎么样了

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/493917

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX